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

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

父類和子類繼承中方法調用的問題


請問在java入門第二季3-4,1分44秒

在測試類中只創(chuàng)建了子類對象,為什么在測試類里沒有調用父類和子類中的方法,結果里面父類的Animal()方法和子類里面的Dog()方法執(zhí)行了,而父類中同一級別的eat()沒有執(zhí)行?

而是eat()方法要在測試類中調用才能執(zhí)行?

正在回答

1 回答

兄弟,才學編程不久吧。。。要想了解原理是需要自己去看書或者網(wǎng)上查資料的,廢話不多說,解釋如下:

????你說的Animal()和Dog()叫做午餐構造函數(shù),Dog類是Animal的子類,在創(chuàng)建dog對象時候,系統(tǒng)會默認初始化,也就是調用類內(nèi)的構造函數(shù),如果你沒有重寫構造函數(shù),系統(tǒng)會自動調用默認的無參構造函數(shù)進行對象的初始化,由于繼承關系,會首先調用Animal(),再調用Dog(),這是構造函數(shù)的調用順序,如果實在理解不了,你就可以想象一下,一個子類,繼承了父類,子類里是要有父類的屬性的,所以需要將父類繼承的屬性先初始化,再初始化自己的屬性,已達到創(chuàng)建對象完整初始化的目的,如果還是不懂,就再看一遍視頻,業(yè)精于勤。。。

????再說一下eat(),這個方法基于重寫的普通方法,如果你自己不用父類的對象主動調用,子類的對象調用eat()的話,系統(tǒng)是不會像調用構造函數(shù)一樣先調用父類的eat()的,這個就相當于你和你父親,都需要吃飯,但是你父親喜歡吃魚,你喜歡吃肉一樣,不能說你自己一個人吃飯,還得必須讓你父親先吃魚的道理。。。

????純手打,如果還有什么不懂,大家互相學習。。。

????

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

Pilipalaaaa 提問者

確實是剛開始學習不久,主要是理解構造方法和普通方法的區(qū)別,昨天查了一下,加上今天的解答,現(xiàn)在有點理解了,多謝解答
2017-12-05 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

父類和子類繼承中方法調用的問題

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

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

幫助反饋 APP下載

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

公眾號

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