通常当我从UI
class I 将调用感兴趣的超类初始值设定项。但是,我不确定实施细节NSObject
,似乎在成员变量方面没有太多进展,所以我想知道:我需要打电话吗[super init]
如果我的子类扩展NSObject
?
从技术上来说,不。这的文档-[NSObject init] http://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/nsobject_Class/Reference/Reference.html#//apple_ref/occ/instm/NSObject/init说
The init
中定义的方法NSObject
类不进行初始化;它只是返回self
.
因为它已被记录,并且可能已经有一堆依赖它的代码,所以事实是highly在 Mac OS X 的未来版本中不太可能改变。
Edit: BoltClock 是一只独角兽 https://stackoverflow.com/a/9970884/5696提出了一个我想更加夸张的观点:不打电话节省的总时间-[NSObject init]
对于曾经运行过您的程序的每个人来说,如果您将类的超类更改为除NSObject
并忘记添加呼叫[super init]
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)