- 使用场景;
- 分类:可以给某一个类扩充一些方法(不修改原来类的代码)
- //声明@interface 类名(分类名称) @end;一个类可以有很多个分类;
- //实现@implementation 类名(分类名称) @end;
- 分类的作用,在不改变原来类内容的基础上,可以为类增加一些方法;
- 使用注意:
- 分类不能扩充成员变量,只能增加方法;
- 分类方法实现中可以访问原来类中声明的成员变量;
- 分类的优先级最高;然后再去原来类中找,最后再去父类中找;
- 分类可以重新实现原来类中的方法,但是会覆盖掉原来的方法,会导致原来的方法没法再使用;
- 最后参与编译的分类优先前面编译的分类;