第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

為什么Java或C#不允許多重繼承?

為什么Java或C#不允許多重繼承?

紅糖糍粑 2019-07-20 12:49:21
為什么Java或C#不允許多重繼承?我知道Java和C#不允許多次繼承。許多書只是說,多重繼承是不允許的。但是它可以通過使用接口來(lái)實(shí)現(xiàn)。沒有人討論為什么不允許這樣做。有人能準(zhǔn)確地告訴我為什么不允許這樣做嗎?
查看完整描述

3 回答

?
qq_花開花謝_0

TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個(gè)贊

理由:由于Java的簡(jiǎn)單性,它非常受歡迎,而且易于編寫代碼。

因此,對(duì)于程序員來(lái)說,不管Java開發(fā)人員感到什么困難和復(fù)雜,他們都試圖避免它。這類財(cái)產(chǎn)之一是多重繼承。

  1. 他們回避指針
  2. 他們避免了多重繼承。

多重繼承的問題:鉆石問題。

:

  1. 假設(shè)A類有一個(gè)方法FY()。B類和C類源于A類。
  2. 類B和C都重寫了方法FY()。
  3. 現(xiàn)在假設(shè)D類繼承了B類和C類(只是假設(shè))
  4. 為D類創(chuàng)建對(duì)象。
  5. D=新D();
  6. 并嘗試訪問d.fan();=>它是調(diào)用B類的FINY()還是調(diào)用C類的FUN()?

這就是鉆石問題中存在的模棱兩可之處。

解決這個(gè)問題并非不可能,但它會(huì)給程序員帶來(lái)更多的混亂和復(fù)雜性。它造成的問題比它試圖解決的更多。

但是,任何方法都可以通過使用接口間接地實(shí)現(xiàn)多重繼承。


查看完整回答
反對(duì) 回復(fù) 2019-07-20
  • 3 回答
  • 0 關(guān)注
  • 684 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)