課程
/后端開發
/Java
/Java入門第二季 升級版
執行obj2.eat()的時候,為什么不是打印Animal.eat()+Dog.eat()?繼承里不是講子類調用父類的時候是先走父類的,再走子類的?
2017-07-12
源自:Java入門第二季 升級版 10-1
正在回答
創建子類對象時,調用方法為子類重寫的方法
Dog類是Animal的子類,Animal類有自身的構造方法,如果Dog類中沒有寫任何構造方法,那么它默認繼承父類Animal的構造方法,但是,在Dog類中,對構造方法進行了重寫,這就意味著,Dog類中的構造方法已經是對繼承而來的構造方法實行了覆蓋,所以在執行obj2.eat()的時候,調用的是Dog類中的構造方法;
構造方法才是先走父類再走子類,別搞混了
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
2 回答為什么WatchDoor是obj2
4 回答求解這段代碼打印結果
5 回答運行結果為什么全是0.0?
2 回答這個里面沒有調用方法,只實例化了,結果為什么直接打印了呀。
5 回答為什么沒有結果?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-09-19
創建子類對象時,調用方法為子類重寫的方法
2017-07-14
Dog類是Animal的子類,Animal類有自身的構造方法,如果Dog類中沒有寫任何構造方法,那么它默認繼承父類Animal的構造方法,但是,在Dog類中,對構造方法進行了重寫,這就意味著,Dog類中的構造方法已經是對繼承而來的構造方法實行了覆蓋,所以在執行obj2.eat()的時候,調用的是Dog類中的構造方法;
2017-07-12
構造方法才是先走父類再走子類,別搞混了