objective-c - 为什么 init 不是类方法?

标签 objective-c cocoa foundation

为什么init方法不是类方法?我的意思是 init 的方法体以 - 开头。 据我所知,以 - 开头的方法是实例方法,但显然我们想要创建一个实例。

最佳答案

init 不是用于创建实例;这就是 alloc 的工作(并且 alloc 一个类方法)。

init 用于设置创建的实例。它需要访问新实例的ivars,并且必须是一个实例方法。

关于objective-c - 为什么 init 不是类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15734661/

相关文章:

ios - 如何在三天后触发 uilocalnotification?

iphone - 迭代效率: NSArray vs C array of pointers?

cocoa - 如何在MacOS中以编程方式确定 “Full Keyboard Access”模式是否打开?

ios - 访问发送者的哪些属性被传递到方法中

ios - 解析 PFQueryTableViewControllerobjectsDidLoad 在 numberOfRowsInSection 之前未执行

objective-c - 当同一个 block 被多次执行时,一个 block 中的 weakSelf 和 strongSelf 会发生什么?

c++ - lib clang.dylib : change installation path

swift - 是否可以通过引用而不是副本将数组分配给类属性?

objective-c - 在 Objective-C 中的循环外声明变量是否有任何优化效果?

ios - Swift 项目中 Objective-C 的条件编译