我一直在阅读一本 Objective C 的书,并创建一个包含其他类(组合)的类,它使用 self = [super init]
- (id) init
{
if (self = [super init]) {
engine = [Engine new];
tires[0] = [Tire new];
tires[1] = [Tire new];
tires[2] = [Tire new];
tires[3] = [Tire new];
}
return (self);
} // init
当他创建另一个类时,他不包含此 init 方法,我知道它需要初始化它将使用的实例对象,但我不明白他为什么要放置 self = [super init] 以及何时一个类需要这个声明。
@interface Tire : NSObject
@end // Tire
@implementation Tire
- (NSString *) description
{
return (@"I am a tire. I last a while");
} // description
@end // Tire