【发布时间】:2013-07-24 03:29:43
【问题描述】:
假设我有两个名为“SuperClass”和 SubClass 的类。子类扩展超类。
我刚刚发现 SuperClass 不可能有 SubClass 类型的实例变量。
也就是说,这是行不通的:
class SuperClass{
SubClass x = new SubClass();
}
因为它会导致构造函数相互调用,进入一个永久循环。 (因为 Java 会自动调用 Super())
创建子类实例变量是不可能的并且是一个糟糕的设计理念吗?还是有某种解决方法?
【问题讨论】:
标签: loops inheritance constructor