【发布时间】:2014-12-31 23:30:30
【问题描述】:
考虑以下情况:
@interface Superclass : NSObject
...
@end
@interface Superclass
+ (void)methodToOverride
{
NSLog(@"This method should be overridden by subclass!");
}
+ (void)callMethodToOverride
{
[self methodToOverride];
}
@end
@interface SubClass : SuperClass
...
@end
@implementation SubClass
+ (void)methodToOverride
{
NSLog(@"I'm overriding this method!");
}
@end
现在,打电话时
[Subclass callMethodToOverride];
我收到"This method should be overridden by subclass!"。是否有可能得到I'm overriding this method! 或者这不能使用ObjC 的静态方法?
干杯!
【问题讨论】:
-
Objective-C 中没有静态方法这种东西。您问题中的方法是类方法(与实例方法相反)。
标签: ios objective-c