到现在为止,我想知道这两者之间的区别。我一直在使用实例方法,但不知道它背后的含义。谁能用最简单的方式解释一下?感谢。
答案 0 :(得分:1)
类本身会调用类方法,如下所示:
[NSDate date];
// declared as: + (NSDate *)date;
在实际对象上调用实例方法:
NSDate *date = ...;
[date timeIntervalSinceNow];
// declared as: - (NSTimeInterval)timeIntervalSinceNow;
阅读The Objective-C Programming Language指南以获取更多信息。
答案 1 :(得分:0)
可以使用井类方法而无需创建类的实例。 由于您没有此类的实例,因此无法使用任何类实例变量。
例如:
@implementation MyStringHelper
@synthesize lastChecked;
+ (BOOL) checkIfEmptyString:(NSString *)checkString {
return ([checkString length] == 0);
}
@end
因此你可以这样称呼:
if ( [MyStringHelper checkIfEmptyString:@"NotEmprty"] ) {
// do something
}
但您无法使用属性latChecked
,因为这需要MyStringHelper
类的实例。