java向下轉(zhuǎn)型基礎(chǔ)知識(shí)點(diǎn)及實(shí)例
1、概念
向下轉(zhuǎn)型就是父類對(duì)象轉(zhuǎn)成子類對(duì)象。我們把一個(gè)父類引用 Animal類型的引用 給了一個(gè) Bird類型 的引用,這就是向下轉(zhuǎn)型
2、格式
子類 子類對(duì)象=(子類)父類實(shí)例
3、注意
向下轉(zhuǎn)型的時(shí)候一定要進(jìn)行強(qiáng)制類型轉(zhuǎn)換
4、實(shí)例
class Animal { public String name; public void eat() { System.out.println(this.name + " 正在吃"); } } class Cat extends Animal { } class Bird extends Animal { public int age; public void fly() { System.out.println(this.name+"起飛"); } } public class Test extends TestDemo { public static void main(String[] args) { Animal animal = new Animal(); Bird bird = (Bird) animal;//必須進(jìn)行強(qiáng)制類型轉(zhuǎn)換 } }
Java向下轉(zhuǎn)型的意義
一開始學(xué)習(xí) Java 時(shí)不重視向下轉(zhuǎn)型。一直搞不清楚向下轉(zhuǎn)型的意義和用途,不清楚其實(shí)就是不會(huì),那開發(fā)的過程肯定也想不到用向下轉(zhuǎn)型。
其實(shí)向上轉(zhuǎn)型和向下轉(zhuǎn)型都是很重要的,可能我們平時(shí)見向上轉(zhuǎn)型多一點(diǎn),向上轉(zhuǎn)型也比較好理解。
但是向下轉(zhuǎn)型,會(huì)不會(huì)覺得很傻,我是要用子類實(shí)例對(duì)象,先是生成子類實(shí)例賦值給父類引用,在將父類引用向下強(qiáng)轉(zhuǎn)給子類
引用,這不是多此一舉嗎?我不向上轉(zhuǎn)型也不向下轉(zhuǎn)型,直接用子類實(shí)例就行了。
我開始學(xué)習(xí)Java時(shí)也是這么想的,這誤區(qū)導(dǎo)致我覺得向下轉(zhuǎn)型就是沒用的。
隨著技術(shù)的提升,我在看開源的項(xiàng)目學(xué)習(xí),發(fā)現(xiàn)很多地方都用了向下轉(zhuǎn)型的技術(shù),這就讓我重視了起來(lái),想要重新來(lái)復(fù)習(xí)(學(xué)習(xí))這個(gè)知識(shí)點(diǎn)。也是搜索了許多博客文章,但都沒具體說明向下轉(zhuǎn)型,只是給了例子演示怎么使用,反而是向上轉(zhuǎn)型講了一堆(可能是我沒找到)。
到此這篇關(guān)于java向下轉(zhuǎn)型基礎(chǔ)知識(shí)點(diǎn)及實(shí)例的文章就介紹到這了,更多相關(guān)java向下轉(zhuǎn)型是什么意思內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)購(gòu)物管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)購(gòu)物管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01SpringBoot利用redis集成消息隊(duì)列的方法
這篇文章主要介紹了SpringBoot利用redis集成消息隊(duì)列的方法,需要的朋友可以參考下2017-08-08Java 不使用第三方變量交換兩個(gè)變量值的四種方法詳解
這篇文章主要介紹了四種不使用第三方變量交換兩個(gè)變量值的方法。文中對(duì)于四種方法進(jìn)行了詳細(xì)的分析,需要的小伙伴們可以跟隨小編一起學(xué)習(xí)一下2021-12-12詳解SpringMVC @RequestBody接收J(rèn)son對(duì)象字符串
這篇文章主要介紹了詳解SpringMVC @RequestBody接收J(rèn)son對(duì)象字符串,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2017-01-01Spring中HandlerMethod類源碼詳細(xì)解析
這篇文章主要介紹了Spring中HandlerMethod類源碼詳細(xì)解析,HandlerMethod類用于封裝控制器方法信息,包含類信息、方法Method對(duì)象、參數(shù)、注解等信息,具體的接口請(qǐng)求是可以根據(jù)封裝的信息調(diào)用具體的方法來(lái)執(zhí)行業(yè)務(wù)邏輯,需要的朋友可以參考下2023-11-11SpringCloud?GateWay網(wǎng)關(guān)示例代碼詳解
這篇文章主要介紹了SpringCloud?GateWay網(wǎng)關(guān),Spring?cloud?Gateway的功能很多很強(qiáng)大,文中提到了Spring?Cloud?Gateway中幾個(gè)重要的概念,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-04-04