Objective c NSObject子类的目标C默认初始化

Objective c NSObject子类的目标C默认初始化,objective-c,Objective C,我不熟悉目标C,我知道这是一个相当琐碎的问题。 我创建了NSObject的子类,定义了一些新属性,但没有在子类中定义初始值设定项。当我调用这行代码时会发生什么: CustomClass *cl = [[CustomClass alloc] init]; 在这一行中,我调用了超类init方法,但是如何初始化子类中的属性呢 创建新对象实例时,所有实例变量(支持属性的变量)都初始化为默认值 所有对象指针都设置为nil。所有基元类型的值均为0(BOOL设置为NO) 换句话说,子类中的所有属性都必须设置

我不熟悉目标C,我知道这是一个相当琐碎的问题。
我创建了NSObject的子类,定义了一些新属性,但没有在子类中定义初始值设定项。当我调用这行代码时会发生什么:

CustomClass *cl = [[CustomClass alloc] init];
在这一行中,我调用了超类init方法,但是如何初始化子类中的属性呢

创建新对象实例时,所有实例变量(支持属性的变量)都初始化为默认值

所有对象指针都设置为
nil
。所有基元类型的值均为
0
BOOL
设置为
NO


换句话说,子类中的所有属性都必须设置为“零”的适当形式。

只需再问两个相关问题。1) 如果我在我的子类中定义了一个init方法,它调用了超类init方法,然后我实例化了我的子类的属性,我会重写我的超类的init方法吗?2) 当我在我的子类中定义一个初始值设定项initWith:时,我还能调用我的超类init方法吗?1)根据定义,在子类中实现一个与超类中的方法具有相同名称和参数的方法将覆盖该方法。2) 是的,
init…
方法可以调用
[super init]