我想知道Object
是否也是「鬆散」抽象類的超類,也就是不擴展其他抽象類的抽象類。我不認爲這很有效。但是,當把所有東西放在一起時,這個「正式」措辭如何呢?對象是抽象類的超類嗎?
下列支持和抵觸在主題行中的數Q i看到的方式:支持
(「是」至Q以上):ⅰ)一個具體的類可以從一個抽象繼承II。 )每個班級都是Object
的後裔,以及iii。)每個班級(除Object
之外)都只有一個超班。如果Object
不是抽象類的超類,那麼(iii)對於Object
的特殊情況必須違反 - 「如果其中一個類是Object
而另一類是抽象類,則類可以有兩個超類。
矛盾(對Q的「否」):抽象類不能具體化,而Object
是具體的。但是,這也可以被解釋爲「針對Object
課程的特例」。
它比另一面更偏向一邊嗎?或者它僅僅是「兩者兼有 - 對於Object
班級來說是例外」。提前致謝。
注意:我讀了關於 Why java.lang.Object is not abstract?的討論。
在上面的原始消息中糾正我明顯的錯誤: 抽象類可以明顯地從具體的類繼承。這也使Object成爲他們的超類。
感謝您的鏈接 - 這使它。我一直都缺少從具體的繼承的抽象類。 – ashley
幾乎所有的例子都有擴展其他具體類的具體類。實際上,我看到的唯一反例是ASP.NET的一個示例類層次結構(它不是Java)。如果你看到一個不同的反例,那麼爲什麼不把它複製到你的答案中,而不是讓讀者梳理該頁面呢? – ruakh