// 例如扩充 Person 类// Category 声明// Person+Test.h@interfacePerson(Test)-(void)run;@end// Category 实现// Person+Test.m@implementationPerson(Test)-(void)run{NSLog(@"run...");}@end// 使用 Person 类的地方,只要导入了 Person+Test.h// 就可以使用 Person 新增的实例方法 run 了
Extention
Class Extention: 类扩展、匿名 Category
可以为某个类扩充一些私有的实例变量和方法,外部是无法访问的
保证封装性 (iOS UI 编写中常用)
子类无法获取父类的类扩展
对比 Category
写在m 文件中
不仅可扩充方法,还可扩充实例变量和 @property
定义格式中不用写分类名
1234567891011
// Person.m// Class Extention@interfacePerson()@end// 类的实现@inpelmentationPerson@end