我是Objective C的新手,我知道这是一个相当微不足道的问题 我创建了NSObject的子类,定义了一些新属性,并没有在子类中定义初始化器。当我调用这行代码时会发生什么:
CustomClass *cl = [[CustomClass alloc] init];
在这一行中,我调用了超类init方法,但是我的子类中的属性如何初始化?
答案 0 :(得分:1)
创建新对象实例时,所有实例变量(支持属性的变量)都会初始化为默认值。
所有对象指针都设置为nil
。所有原始类型的值都为0
(BOOL
设置为NO
)。
换句话说,子类中的所有属性都应设置为适当的“零”形式。