【发布时间】:2014-03-10 06:49:40
【问题描述】:
B 类派生自 A 类。 B类覆盖'-(NSString *)描述',在A类中也被覆盖。 我创建了一个新的“NSArray”指向实例的指针,包括 A 类和 B 类。
是否可以将一个循环中的所有这些实例都视为 A 类实例,更准确地说 - 是否可以对所有这些实例使用 A 类“- (NSString *) 描述”?
目前,我使用检查它是否是 B 类实例,并在这种情况下调用生成 A 类实例的初始化程序。但这似乎没有必要,我不喜欢这种解决方案。
【问题讨论】:
-
不,这是不可能的。你为什么要这样做?你更大的目标是什么?
-
我想获取上下文描述。比如说,Class Worker 派生自 Class Person。如果我召集工人问他们“你们是谁,伙计们?”,我希望他们告诉我他们的工作是什么。但是,如果我同时收集 Persons 和 Workers 并提出相同的问题,我期望的只是名称。
标签: objective-c nsarray