我有 3 节课
一个基类:MyBaseClass
这实现了一个方法:
- (void) aSuperMethod {
[[UtilClass sharedUtil] doThisAndSendAnswerToMe:self]
}
- (void) answerReader:(bla bla)someParams {}
MyBaseClass 的一个子类:MySubClass
这也实现了这些方法:
- (void) anotherMethod {
[[UtilClass sharedUtil] doThisAndSendAnswerToMe:self]
[self aSuperMethod];
}
- (void) answerReader:(bla bla)someParams {}
当然还有一个实用程序类:UtilClass
这实现了这种方法:
- (void) doThisAndSendAnswerToMe:(id)listener {
do some stuff
[listener answerReader:someAnswerParams];
}
当然,在调试模式下,doThisAndSendAnswerToMe 方法在两次调用中收到的侦听器都是 MySubClass 类的。
根据呼叫来源,我该如何指向 MySubClass 或 MyBaseClass ?