如果ClassB
是ClassA
的子类,那么ClassB's
ivars中的一个是来自ClassA
的实例是否可以?对不起,如果这是一个愚蠢的问题。我发现ClassB
从ClassA
继承的方式让我感到困惑,但它可能拥有它的一个实例。
答案 0 :(得分:1)
这完全没问题。一个班级甚至可以拥有自己类型的ivar。
假设你有一辆旅行车,想要为火车建模。你的Wagon类可能有两个类型Wagon的ivars。一个指向火车上的下一辆货车,另一个指向前一辆货车。
然后你可以实现Wagon的PassengerWagon子类,它将从它的超级类继承Wagon ivars。需要说明的是:如果你只想跟踪PassengerWagon实例的邻居,你也可以只在PassengerWagon而不是超类中定义ivars(类型为Wagon),但这些邻居可以是任何Wagon类型。
答案 1 :(得分:1)
是的,那很好。你可以在任何课程中使用任何类型的ivars。