1

我有两个班,FoodNachoFoodNacho的超一流。

Food *junk = [[Nacho alloc] init];

只要我调用Food的方法就有效,对吗?

但是为什么那个Food指针可以调用Nacho's 方法之一(在子类中定义为附加方法)?

  • 固定,从类名中删除了“NS”前缀。
4

1 回答 1

1

好吧,它并不是真正的NSMom实例,因此您可以在运行时调用它,因为该NSSon实例确实实现了该方法。在编译时,您确实需要做一些事情来告诉编译器它不应该检查类型(或者它应该信任你)。

除了 - 不要在实际代码中为您自己的类添加“NS”前缀。迟早你会与 Apple 课程发生冲突。

于 2013-08-18T18:45:00.313 回答