【问题标题】:What is difference between -(NSMutableArray *)getContactsList and +(NSMutableArray *)getContactsList [duplicate]-(NSMutableArray *)getContactsList 和 +(NSMutableArray *)getContactsList 有什么区别 [重复]
【发布时间】:2010-12-28 07:36:11
【问题描述】:

可能重复:
What do the plus and minus signs mean in Objective C next to a method?

我想知道带 - 符号和带 +symbaol 的方法之间的区别。

例如-(NSMutableArray *)getContactsList; +(NSMutableArray *)getContactsList;

谢谢 普拉维娜。

【问题讨论】:

标签: iphone objective-c


【解决方案1】:

这两种方法的区别是;

以“-”开头的方法是实例方法。您可以使用特定类的对象调用该方法。

例如:

A *a = [[A alloc] init];
array = [a getContactsList];

并且以“+”开头的方法是类方法。您可以使用类名调用该方法。

例如:

array = [A getContactsList];

这是主要区别。

在 Class 方法中还有一件事,您可以只使用静态变量,即实例变量。

问候,

萨提亚。

【讨论】:

  • 类方法可以使用静态或全局。我假设“私有”和“正常”是指实例变量?如果是这样,那么是的,但至少要直呼他们的正名!
【解决方案2】:

带+的方法是静态方法,它返回一个保留对象,带自动释放,表示你不是对象的所有者。

【讨论】:

  • Objective-C 没有“静态”方法;它有类方法。类方法不保证返回自动释放的对象(请参阅+new)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-23
  • 1970-01-01
  • 2011-07-22
  • 1970-01-01
  • 2013-05-08
相关资源
最近更新 更多