【发布时间】:2012-11-07 22:57:39
【问题描述】:
我想知道Object 是否也是“松散”抽象类的超类,即不扩展其他抽象类的抽象类。我不认为这很重要。但是,当把所有东西放在一起时,这个“正式”的措辞如何。
以下支持和反驳我看到的主题行中的 Q:
支持(对上面的 Q 表示“是”):i.) 具体类可以从抽象类继承,ii.) 每个类都是 Object 的后代,以及 iii.) 每个类(Object 除外) 只有一个超类。如果Object 不是抽象类的超类,
那么 (iii) 对于Object 的特殊情况,必须违反——“一个类可以有两个超类,只要其中一个是Object,另一个是抽象的。”
矛盾(对 Q 表示“否”):抽象类不能从属于具体类,而 Object 是具体的。但是,这也可以表述为“Object 类的特殊情况”。
是一方面比另一方面更多,还是仅仅是“两者兼而有之——Object 类的例外”。提前致谢。
注意:我阅读了关于 Why java.lang.Object is not abstract?。
更正我在上面原始消息中的明显错误: 抽象类显然可以从具体类继承。这也使 Object 成为它们的超类。
【问题讨论】:
标签: java object inheritance