Метод methodSignatureForSelector:
- метод экземпляра -
, а не первый класс +
. Так почему мое приложение не ломается, когда я это сделать:Почему [self class] отвечает на методSignatureForSelector :?
return [[self class] methodSignatureForSelector:@selector(selector)];
Он также работает с methodForSelector:
методом. Зачем? Оказывается, что class
может ответить на сообщение +
, например alloc
и за сообщениями -
. Может ли кто-нибудь пролить свет на этот вопрос?
Потому что [классы Objective-C также являются объектами] (https://developer.apple.com/library/ios/documentation/cocoa/conceptual/ProgrammingWithObjectiveC/DefiningClasses/DefiningClasses.html#//apple_ref/doc/uid/ TP40011210-CH3-SW18) – Kreiri