Как вы вызываете метод класса из метода экземпляра, не используя имя класса - PullRequest
0 голосов
/ 24 февраля 2012

У меня есть базовый класс, который реализует некоторые методы класса. Он использует имя класса, чтобы определить, какой это ресурс, и удаленно извлечь его.

@implementation BaseResource : CPObject

+ (id)find:(CPString)identifier
{
}

Я хотел бы иметь возможность вызывать методы класса из метода экземпляра, например

- (id)initWithCoder:(CPCoder)aCoder
{
    [self find:1]; // This does not work
    [BaseResource find:1];  // This works but will not resolve to the right resource name
}

Я не хочу использовать имя класса BaseResource, потому что оно должно работать для подкласса с разными именами.

Как вызвать метод класса из метода экземпляра без явного использования имени класса?

1 Ответ

2 голосов
/ 27 февраля 2012
[self class] 

сделает свое дело.

Например,

[[self class] find:1] 
...