我刚刚在Stack Overflow上发现了这段代码:
-(id) init {
if (self = [super init]) {
//... Some code ...
}
return self;
}
在询问我们为何使用此功能后,在通过Google搜索后,我发现这是一种经典的方式。
但是我在编写应用程序时从未见过呃代码。这仍然在Objective-C 2.0中使用吗?
答案 0 :(得分:4)
它肯定是构建新对象的常见模式。应该改变什么?超类的init方法可能会失败,初始化的部分也可能会失败,在这种情况下你不会返回self,而是nil
。