亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

java 子類繼承abstract父類時編譯器不通過,將子類聲明為abstract類后通過但是Initail類(測試類)中無法引用

java 子類繼承abstract父類時編譯器不通過,將子類聲明為abstract類后通過但是Initail類(測試類)中無法引用

hunterter 2015-08-30 12:23:10
這是abstract父類但是子類這樣寫編譯器報錯錯誤如上圖將子類聲明abstract后通過了,但是測試類中無法引用:Shape sha1 = new Rectangle();報錯。求高手指教。
查看完整描述

2 回答

已采納
?
sunyx

TA貢獻12條經驗 獲得超0個贊

報錯很明顯,Rectangle沒有實現抽象類Shape中的方法,而是重載了_long 和square方法(對比shape和rectangle的兩個方法的參數列表完全不同)。所以編譯器告訴你,必須要實現抽象類中的方法。

把抽象方法改成如下

public?abstract?void?Shape{
????public?abstract?void?_long(int?a,int?b);
????public?abstract?void?square(int?a,int?b);
}


查看完整回答
反對 回復 2015-08-30
?
忘性最大的人

TA貢獻118條經驗 獲得超37個贊

首先,抽象類不能被實例化;再者你的抽象類方法明明是不含參數的,你把@Override注釋去掉之后相當于在子類中新建了一個方法,跟原先的抽象父類就沒什么關系了,相當于沒有用到抽象父類。(個人見解,恐有不足)

查看完整回答
反對 回復 2015-08-30
  • 2 回答
  • 0 關注
  • 1769 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

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

公眾號

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