Objective-C 编程:类别、协议与复合对象深度解析
1. 类别(Categories)
类别是一种为现有类添加新方法的方式,它可以将方法的声明和实现放在单独的文件中,也可以放在原类的头文件里。
1.1 类别文件命名约定
按照惯例,类别对应的 .h 和 .m 文件的基本名称是类名后跟类别名。例如,为 Fraction 类添加一个名为 MathOps 的类别,接口部分可放在 FractionMathOps.h 文件中,实现部分放在 FractionMathOps.m 文件中。有些程序员会用 + 号分隔类名和类别名,如 Fraction+MathOps.h 。
1.2 类别文件放置位置
- 原类头文件 :若将类别放入原类的主定义文件,类的所有使用者都能访问类别中的方法。
- 单独文件 :若无法直接修改原头文件(如为库中的现有类添加类别),则需将类别单独存放。
1.3 类扩展(Class Extensions)
类扩展是一种特殊的无名称类别,即在 () 之间不指定名称。通过类扩展,可以为类定义额外的实例变量,这在命名类别中是不允许的。无名称类别中声明的方法在类的主实现部分实现,而非单独的实现部分。若未实现无
超级会员免费看
订阅专栏 解锁全文
64

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



