init
在 Objective-C 中,方法(即类的指定初始化程序)和方法之间有什么区别initialize
?每个应该放什么初始化代码?
问问题
27323 次
2 回答
127
-init
是一个实例方法,用于初始化一个特定的对象。+initialize
是一个类方法,在创建该类的任何实例之前以及运行其他类方法之前运行。+initialize
不是您大部分时间使用的东西,但它对于设置类作为一个整体可能使用的任何静态变量或确保在创建任何实例之前满足某些条件非常方便。
属于-init
方法的代码在Objective-C 编程语言的实现初始化程序部分中有详细的描述。在同一个文档的Class Objects部分中,还讨论了初始化类(即)以及为什么您可能需要这样做。进入的代码通常与类的特殊功能密切相关,需要您首先对其进行初始化。在(以及在任何类方法中)要记住的一件重要事情是,在类方法中是指类本身,而不是类的实例。+initialize
+initialize
+initialize
self
于 2011-05-31T17:55:35.690 回答
19
为 Java 开发人员打个比方,init 就像一个构造函数,而 initialize 就像一个类上的静态块。
于 2013-03-23T09:06:33.207 回答