為什么Java類只能單繼承

首先我們要明確一個(gè)事實(shí),在Java語言中類只能單繼承與某個(gè)類,卻可以多集成接口。同時(shí)接口與接口之間可以多繼承。

為什么Java類只能單繼承?

“Java是一種簡(jiǎn)單的,面向?qū)ο蟮?,分布式的,解釋型的,健壯的,安全的,架?gòu)中立的,可移植的,高性能的,支持多線程的,動(dòng)態(tài)語言?!?/i>

以上這段話是James Gosling對(duì)于Java語言的定義。定義中提到Java的一個(gè)特性是簡(jiǎn)單。好,那接下來我們?cè)O(shè)想,Java是可以多繼承的,舉個(gè)例子,在這里有個(gè)A類,我們又編寫了兩個(gè)類B類和C類,并且B類和C類分別繼承了A類,并且對(duì)A類的同一個(gè)方法進(jìn)行了覆蓋。如果此時(shí)我們?cè)俅尉帉懥艘粋€(gè)D類,并且D類以多繼承的方式同時(shí)集成了B類和C類,那么D類也會(huì)繼承B類和C類從A類中重載的方法,那么問題來了,D類也開始犯迷糊了,我到底應(yīng)該哪個(gè)繼承哪個(gè)類中的方法呢,因?yàn)轭愂墙Y(jié)構(gòu)性的,這樣就會(huì)造成結(jié)構(gòu)上的混亂。這就是多繼承的菱形繼承問題。

學(xué)習(xí)過C++的同學(xué)可能會(huì)問,C++也是面向?qū)ο蟮?,為什么它卻可以多繼承的呢?首先,C++語言是1983年由貝爾實(shí)驗(yàn)室的Bjarne Stroustrup在C語言的基礎(chǔ)上推出的,Java語言是1995年由James Gosling和同事共同正式推出的。其次,在C++被設(shè)計(jì)出來后,就會(huì)經(jīng)常掉入多繼承這個(gè)陷阱,雖然它也提出了相應(yīng)的解決辦法,但Java語言本著簡(jiǎn)單的原則舍棄了C++中的多繼承,這樣也會(huì)使程序更具安全性。

為什么Java類可以集成多個(gè)接口?

Java接口是行為性的,也就是說它只是定義某個(gè)行為的名稱,而具體的行為的實(shí)現(xiàn)是集成接口的類實(shí)現(xiàn)的,因此就算兩個(gè)接口中定義了兩個(gè)名稱完全相同的方法,當(dāng)某個(gè)類去集成這兩個(gè)接口時(shí),類中也只會(huì)有一個(gè)相應(yīng)的方法,這個(gè)方法的具體實(shí)現(xiàn)是這個(gè)類來進(jìn)行編寫的,所以并不會(huì)出現(xiàn)結(jié)構(gòu)混亂的情況。

為什么Java接口與接口之間可以多繼承?

通過以上的闡述,我想這個(gè)問題也就迎刃而解了。

在這篇文章中有自己的一點(diǎn)點(diǎn)理解,如果有不正確的地方,請(qǐng)見諒,并私信或評(píng)論告訴我,謝謝。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,728評(píng)論 18 399
  • (一)Java部分 1、列舉出JAVA中6個(gè)比較常用的包【天威誠(chéng)信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,265評(píng)論 0 62
  • 我的那個(gè)他在哪,我連自己的婚紗都畫好了 希望你來的時(shí)候能遞給我一束滿天星
    歡顏莫此閱讀 375評(píng)論 0 1
  • 前面兩篇其實(shí)都是為了寫一下leaflet-heatmap.js最后搜了一下github https://githu...
    進(jìn)擊的前端閱讀 11,022評(píng)論 8 4
  • 外面風(fēng)很大,我拉著床簾躲在黑黑的宿舍里面。舍友在睡覺,而我卻無比的清醒。 大學(xué)已經(jīng)過去了四分之一,我卻什么也沒...
    皮兮歪閱讀 463評(píng)論 0 0

友情鏈接更多精彩內(nèi)容