Java編程里有三大特性即:封裝、繼承、多態(tài)。今天動(dòng)寶兒帶大家了解三大特性之一,多態(tài),看看多態(tài)有哪些特性,有哪些不同之處。
一.多態(tài):一個(gè)對象具有多種表現(xiàn)形態(tài)(父類的引用類型變量指向了子類的對象)
二.多態(tài)的滿足條件:1.必須要有繼承關(guān)系2.必須要有方法的重寫
三.int[]a;//a引用類型變量-->//引用in類型數(shù)組的變量
四.引用類型的變量:數(shù)組,字符串,對象
Animal類,Dog,Fish
Animala=newDog[Fish];//多態(tài)的表現(xiàn)形式
五.多態(tài)的使用注意點(diǎn):
1.多態(tài)情況下:子父類存在同名的成員變量,默認(rèn)是訪問的父類中的成員變量
2.多態(tài)的情況下:子父類存在同名的非靜態(tài)方法,訪問的是子類的非靜態(tài)方法
3.多態(tài)的情況下:子父類存在同名的靜態(tài)方法
4.多態(tài)的情況下:不能訪問子類特有的成員
總結(jié):多態(tài)情況下,子父類如果存在同名的成員,訪問的都是父類,除了同名的非靜態(tài)方法是訪問子類。
Java編譯器編譯原理導(dǎo)致編譯看左邊,運(yùn)行不一定看右邊
編譯看左邊:Java編譯器在編譯的時(shí)候會(huì)檢測引用類型中是否含有指定的成員,如果沒有就會(huì)報(bào)錯(cuò)
以上就是動(dòng)寶兒與大家分享的三大特性之一的多態(tài),你們感覺如何呢?更多資訊敬請關(guān)注動(dòng)力節(jié)點(diǎn)官網(wǎng)及官方微信,更多一手咨詢快速獲取。