我有两个班级,Food
和Nacho
。 Food
是Nacho
的超类。
Food *junk = [[Nacho alloc] init];
只要我调用Food
的方法,就有效,对吧?
但是Food
指针怎么可以调用Nacho
的方法之一(在子类中定义为附加方法)?
答案 0 :(得分:1)
嗯,它实际上不是NSMom
实例,因此您可以在运行时调用它,因为NSSon
实例确实实现了该方法。在编译时,你需要做一些事情来告诉编译器它不应该检查类型(或它应该信任你)。
除此之外 - 不要在实际代码中为自己的类添加前缀“NS”。迟早你会与Apple班级发生冲突。