課程
/后端開發(fā)
/Java
/Java入門第二季 升級(jí)版
RT,為什么不直接通過子類來直接定義對(duì)象呢?或者說父類的引用有什么好處呢?
2015-03-04
源自:Java入門第二季 升級(jí)版 10-1
正在回答
Animal?animal?=?new?Cat();??//聲明的是父類,實(shí)際指向的是子類的一個(gè)對(duì)象。
代碼定義了一個(gè)Animal類型的引用,指向新建的Cat類型的對(duì)象。由于Cat是繼承自它的父類Animal,所以Animal類型的引用是可以指向Cat類型的對(duì)象的,這就是“向上轉(zhuǎn)型”。這樣做意義就是因?yàn)樽宇愂菍?duì)父類的一個(gè)改進(jìn)和擴(kuò)充,所以一般子類在功能上較父類更強(qiáng)大,屬性較父類更獨(dú)特, 定義一個(gè)父類類型的引用指向一個(gè)子類的對(duì)象既可以使用子類強(qiáng)大的功能,又可以抽取父類的共性。 所以,父類類型的引用可以調(diào)用父類中定義的所有屬性和方法,而對(duì)于子類中定義而父類中沒有的方法,父類引用是無法調(diào)用的;
這么說可能還有些不好理解,學(xué)習(xí)完“Java設(shè)計(jì)模式”之后就很容易理解了。
http://t.imooc.com/course/programdetail/pid/18
舉報(bào)
課程升級(jí)!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會(huì)Java面向?qū)ο缶幊痰膴W妙
2 回答父類引用和子類引用
2 回答父類引用子類
1 回答父類引用的數(shù)組的用法是什么
3 回答為什么要引入“父類引用”,直接用子類的引用不好嗎?
1 回答父類對(duì)子類的引用
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2015-03-05
代碼定義了一個(gè)Animal類型的引用,指向新建的Cat類型的對(duì)象。由于Cat是繼承自它的父類Animal,所以Animal類型的引用是可以指向Cat類型的對(duì)象的,這就是“向上轉(zhuǎn)型”。這樣做意義就是因?yàn)樽宇愂菍?duì)父類的一個(gè)改進(jìn)和擴(kuò)充,所以一般子類在功能上較父類更強(qiáng)大,屬性較父類更獨(dú)特, 定義一個(gè)父類類型的引用指向一個(gè)子類的對(duì)象既可以使用子類強(qiáng)大的功能,又可以抽取父類的共性。 所以,父類類型的引用可以調(diào)用父類中定義的所有屬性和方法,而對(duì)于子類中定義而父類中沒有的方法,父類引用是無法調(diào)用的;
這么說可能還有些不好理解,學(xué)習(xí)完“Java設(shè)計(jì)模式”之后就很容易理解了。