最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號安全,請及時綁定郵箱和手機立即綁定

定義一個有參的父類構造方法,同時子類的構造方法中寫了super()了,這樣情況也報錯。

public?Animal(int?age){
this.age=age
}


pubilc?Cat(){
????super();
????System.out.println("子類構造方法執(zhí)行");
}

在不改變父類構造方法的前提下,子類構造方法怎么修改才能不報錯?

super()括號中添加一個int的數字才能不報錯,這是為什么呢

正在回答

3 回答

父類中定義了有參構造方法之后會覆蓋掉原來系統(tǒng)默認的無參構造方法,所以super();報錯

在原有程序基礎上可以顯式定義父類的無參構造方法或者super(參數);

也可以把父類有參構造方法刪了

因為為了保證子類所有從父類繼承的屬性都能夠正確初始化,所以java虛擬機會先調用父類的無參構造方法,只有有參構造方法的話,必須顯式調用super(參數);


0 回復 有任何疑惑可以回復我~
  1. 不寫構造方法,默認無參

  2. 只寫一個有參,默認有參,且會覆蓋無參,導致無參不好用

  3. 有參無參都寫,默認都有,都好用


2 回復 有任何疑惑可以回復我~

定義了一個有參的構造方法以后,系統(tǒng)不在添加無參的構造方法,那super()的時候就找不到無參的構造方法,所以就報錯了吧,我是這么理解的

0 回復 有任何疑惑可以回復我~
#1

所念隔遠鄉(xiāng) 提問者

說明super();這樣寫是無參,但是super(10);這樣寫的話就不會報錯了
2019-04-23 回復 有任何疑惑可以回復我~
#2

AndrewOVO 回復 所念隔遠鄉(xiāng) 提問者

因為你super()這樣寫的是無參的Animal類,你super(10);這樣寫的就是有參的Animal類,里面的10就是你設置的Animal age的大小
2019-09-20 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

定義一個有參的父類構造方法,同時子類的構造方法中寫了super()了,這樣情況也報錯。

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號