在Objective-C中使用类方法,实例方法的位置

时间:2015-10-26 07:53:51

标签: objective-c class methods class-method instance-methods

“实例”在Objective-C中意味着什么? 请告诉我在哪里使用Class Method以及在哪里使用Instance Method,还告诉我在哪里使用(Instacetype)方法? 为什么/我们使用多参数?

1 个答案:

答案 0 :(得分:1)

类方法是一种方法,其self参数是对类的类对象的引用。

实例方法是一种方法,其self参数是对类的特定实例的引用。

这些是技术差异。

更实际的答案是,实例方法在类的单个实例上运行,而类方法在更全局,非特定的级别上运行。类方法可以充当工厂方法,例如NSString&n; stringWithFormat:方法。它还可用于配置将影响该类的所有实例的行为。它还可用于对类的实例集合进行操作,例如排序或过滤。

instancetype是一个关键字,可用作当前类类型的占位符。它告诉编译器:假装我写了< my class name>在这里,所以如果你看到这个方法的结果被分配到哪里,你就会知道它应该是什么类型。