第27条:使用“class-continuation分类”隐藏实现细节
class-continuation分类的用途
- 把实例变量(或属性)定义在“class-continuation分类”或“实现块”中可以将其隐藏起来,只供本类使用。
- 编写Objective-C++代码时,将C++类放在“class-continuation分类”中,可避免在头文件中出现C++代码。
- 将public接口中声明为“只读”的属性扩展为“可读写”,以便在类的内部设置其值。
- 只会在类的实现代码中用到的私有代码可以在声明在““class-continuation分类”中。
- 若对象所遵从的协议只视为私有,则可在““class-continuation分类”中声明。
要点
- 通过“class-continuation分类”向类中新增实例变量。
- 如果某属性在主接口中声明为“只读”,而类的内部又要用设置方法修改此属性,那么就在““class-continuation分类”中将其扩展为“可读写”。
- 把私有方法的原型声明在““class-continuation分类”里面。
- 若想使类所遵循的协议不为人所知,则可于““class-continuation分类”中声明。