2012-05-06 51 views

回答

4

以+开头的方法是类方法;也就是说,它们不会被实际的对象(类的实例)调用,而是被调用到类本身上。

+0

那么,如果在类本身而不是对象上调用它,它有什么区别? – CoreCode

+1

@CoreCode你不能调用类的实例方法。您需要该类的一个实例才能使用这些方法。 –

+0

在对象上调用实例方法;也就是说,当两个实例中的数据结构的值不同时,它们对于同一类的每个实例的行为可能会有所不同。但是当一个类方法被调用时,类方法总是会做同样的事情(对于给定的相同参数,并且如果没有修改与该方法相关的静态变量)。 – 2012-05-06 04:04:24

0

返回类型前带有“+”的方法表示存在这样的静态方法(它没有实例化该类的对象)。带“ - ”的方法与单个对象有关。

+0

典型情况Objective C程序员称它们为”类方法“,而不是”静态方法“,如在Java中。 – echristopherson

+0

是的,我知道..但我说的是类似的方式。事实上,类方法与静态方法如c#,java,C++等一样。 ;-) – innuendoreplay

相关问题