我看到UIColor类可以像这样调用变量[UIColor redColor]; 我怎样才能写我的课来做同样的事情?另外,我是否可以只为类提供方法,例如:
[MyClass callingMyMethod];
谢谢。
答案 0 :(得分:2)
是。在声明方法时,只需使用+
代替-
:
+ (void)callingMyMethod
{
...
}
答案 1 :(得分:0)
您必须创建一个类方法。类方法的定义与实例方法类似,但具有+
而不是-
:
@interface MyClass : NSObject
+ (id)classMethod;
- (id)instanceMethod;
@end
@implementation MyClass
+ (id)classMethod
{
return self; // The class object
}
- (id)instanceMethod
{
return self; // An instance of the class
}
请注意,在类方法中,self
变量将引用类,而不是类的实例。
答案 2 :(得分:0)
是的,它们是呼叫类消息。在定义消息时使用+
代替-
。
像这样:
@interface MyClass : NSObject
{
}
+ (void) callingMyMethod;
答案 3 :(得分:0)
使用+
代替-
。这称为类方法,用于初始化和返回对象。
@interface SomeClass : NSObject + (id)callingMyMethod; - (id)otherMethod; @end @implementation SomeClass + (id)callingMyMethod { return self; // The class object } - (id)otherMethod { return self; // An instance of the class }