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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么Java中沒有多重繼承,但允許實現(xiàn)多個接口?

為什么Java中沒有多重繼承,但允許實現(xiàn)多個接口?

為什么Java中沒有多重繼承,但允許實現(xiàn)多個接口?Java不允許多重繼承,但它允許實現(xiàn)多個接口。為什么?
查看完整描述

3 回答

?
紅糖糍粑

TA貢獻1815條經(jīng)驗 獲得超6個贊

因為接口只指定什么全班都在做,而不是多么,怎樣它在做這件事。

多重繼承的問題是兩個類可能定義不同方式做同樣的事情,子類不能選擇哪一個。


查看完整回答
反對 回復(fù) 2019-07-15
?
喵喵時光機

TA貢獻1846條經(jīng)驗 獲得超7個贊

我的一位大學(xué)老師這樣對我解釋說:

假設(shè)我有一個類,一個是烤面包機,另一個類是核轟炸機。他們可能都有“黑暗”的背景。它們都有一個on()方法。(其中一個有OFF(),另一個沒有)。如果我想創(chuàng)建一個這兩個類的子類.如你所見,這是一個可能在我面前爆炸的問題。

因此,其中一個主要問題是,如果您有兩個父類,它們可能有相同特性的不同實現(xiàn)-或者可能有兩個同名的不同特性,如我的講師的例子中所示。然后,您必須決定您的子類將使用哪個子類。當然,有處理這個問題的方法-C+就是這樣做的-但是Java的設(shè)計者認為這會使事情變得太復(fù)雜。

但是,使用接口,您可以描述類能夠做的事情,而不是借用另一個類的方法來做一些事情。與多個父類相比,多個接口導(dǎo)致需要解決的棘手沖突的可能性要小得多。


查看完整回答
反對 回復(fù) 2019-07-15
?
慕姐8265434

TA貢獻1813條經(jīng)驗 獲得超2個贊

這個問題的答案在于java編譯器的內(nèi)部工作(構(gòu)造函數(shù)鏈)。如果我們看到j(luò)ava編譯器的內(nèi)部工作:

public class Bank {
  public void printBankBalance(){
    System.out.println("10k");
  }}class SBI extends Bank{
 public void printBankBalance(){
    System.out.println("20k");
  }}

編譯后,如下所示:

public class Bank {
  public Bank(){
   super();
  }
  public void printBankBalance(){
    System.out.println("10k");
  }}class SBI extends Bank {
 SBI(){
   super();
 }
 public void printBankBalance(){
    System.out.println("20k");
  }}

當我們擴展類并創(chuàng)建它的一個對象時,一個構(gòu)造器鏈將運行到Object班級,等級。

以上代碼運行良好。但是如果我們有另一個類Car擴展Bank還有一個雜交(多重繼承)類調(diào)用SBICar:

class Car extends Bank {
  Car() {
    super();
  }
  public void run(){
    System.out.println("99Km/h");
  }}class SBICar extends Bank, Car {
  SBICar() {
    super(); //NOTE: compile time ambiguity.
  }
  public void run() {
    System.out.println("99Km/h");
  }
  public void printBankBalance(){
    System.out.println("20k");
  }}

在這種情況下(SBICar)將無法創(chuàng)建構(gòu)造函數(shù)鏈(編譯時間歧義).

對于接口,這是允許的,因為我們不能創(chuàng)建它的對象。

對于新的概念defaultstatic方法請參閱默認接口.

希望這將解決您的查詢。謝謝。


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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