类别与匿名类别的比较
类别作用:
对原有类(官方类,第三方类,自定义类等)增补方法,不会对原有类产生影响
1,增加成员方法或类方法,不能增加成员变量。
2,在类别中可以访问原类中的成员方法,可以访问原类中的成员变量。
类别的优缺点:
优点:
1,不需要通过增加子类而增加现有类的方法,且类别中的方法与原始类方法基本没有区别;
2,通过类别可以将庞大的一个类的方法进行划分,便于代码的日后维护,更新等。
缺点:
1,无法向类别添加实例变量,如果需要增加实例变量,之恩给你通过定义子类的形式
2,类别中的方法与原始类及父类方法相比具有更高的优先级,如果覆盖父类的方法,
可能导致super消息的断裂,因此,最好不要付费原始类中的方法
匿名类别:
匿名类别中可以有属性和方法,成员变量,在类外不能直接调用,只可以在类内调用。
子类中不能直接访问匿名类别中生命的方法和成员变量