对OC类的扩展总结如下:
共有4个:
1、子类 subClass
作用:可以使用类的继承来增添父类的变量和方法。
写法:在.h文件中
@interface Student : Person
写法:在.h和.m文件中,文件名为”父类名+分类名”格式。
在@interface @implementation 后 “父类名(分类名)"
写法:在.m文件中 @implementation 前实现
@interface Person(){ NSString * _age;}
- (void)aa;
@end如此这样,就定义了私有方法。
- (void)method2;
@optional //可以选择实现
- (void)method3;
共有4个:
1、子类 subClass
作用:可以使用类的继承来增添父类的变量和方法。
写法:在.h文件中
@interface Student : Person
2、分类 Category
作用:可以增添父类的功能,但不能定义变量。多用于不知道源码的情况下,对父类进行扩展。写法:在.h和.m文件中,文件名为”父类名+分类名”格式。
在@interface @implementation 后 “父类名(分类名)"
3、Extension
作用:定义私有方法。可以隐藏不对外公布的方法。多用于隐藏一些中间步骤的方法。写法:在.m文件中 @implementation 前实现
@interface Person(){ NSString * _age;}
- (void)aa;
@end如此这样,就定义了私有方法。
4、protocol
作用:可以实现类似多继承的方法。一个类遵守多个协议。
写法:协议只有.h文件,定义了方法。
@required //默认是必须实现的
- (void)method1;- (void)method2;
@optional //可以选择实现
- (void)method3;
本文详细介绍了Objective-C中四种类扩展的方式:子类(subClass)、分类(Category)、Extension及protocol。子类允许添加父类的变量和方法;分类可以在不修改原始类的基础上增加方法;Extension用于定义私有方法;protocol则支持类似多继承的功能。
716

被折叠的 条评论
为什么被折叠?



