如何从类的实例调用方法?

时间:2009-01-09 21:36:18

标签: objective-c

-(NSDictionary *)properties;
+(NSDictionary *)ClassProperties;

现在,我如何从子类调用ClassProperties?

-(NSDictionary *)properties {
    return [? ClassProperties];
}

关键是ClassProperties获取类中的属性列表,因此我无法调用基类定义。

2 个答案:

答案 0 :(得分:5)

按照Marc的回应,你可以更普遍地用

调用方法
[[self class] ClassProperties]

实际上,如果您的基类和所有子类实现+ (NSDictionary *)ClassProperties,那么您的基类可以执行此操作

- (NSDictionary *)properties {
    return [[self class] ClassProperties];
}

然后你的子类都不需要了解- (NSDictionary *)properties。将根据self是什么来调用正确的类方法。

答案 1 :(得分:1)

您只需使用子类的类名。