Objective-C编程:初始化方法、属性、类别与块的深入解析
1. 初始化方法规则
在编写Objective - C初始化方法时,有以下规则需要遵循:
- 指定初始化器 :若一个类有多个初始化器,仅一个应执行实际工作,此方法称为指定初始化器。其他初始化器应直接或间接调用指定初始化器。
- 调用父类指定初始化器 :指定初始化器在初始化自身实例变量前,需调用父类的指定初始化器。
- 重写父类指定初始化器 :若类的指定初始化器与父类的指定初始化器名称不同,必须重写父类的指定初始化器,使其调用新的指定初始化器。
- 文档说明 :若有多个初始化器,需在头文件中明确文档说明哪个是指定初始化器。
例如,创建一个 NSObject 的子类 WallSafe ,其指定初始化器为 initWithSecretCode: 。若默认值对 secretCode 不够安全,不能使用重写 init 调用带默认值的指定初始化器的模式。此时,可按如下方式重写 init 方法,提醒开发者使用正确的初始化器:
- (id)init
{
@throw [NSException exceptionWithName:@"WallSafeInitialization"
超级会员免费看
订阅专栏 解锁全文
11

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



