多型與向上轉型和向下轉型

2021-10-06 15:50:29 字數 746 閱讀 8694

多型是因為有了繼承和介面才存在。多型就是乙個例項既可以用子類的方法,也可以通過轉化使用父類的方法。最終多型體現為父類引用變數可以指向子類,使用多型後,父類引用變數呼叫方法可以使用子類重寫後的方法。

多型的轉型分為向上轉型和向下轉型兩種。

向上轉型:多型本身就是向上轉型過的過程

使用格式:父類型別 變數名=new 子類型別();

適用場景:當不需要面對子類型別時,通過提高擴充套件性,或者使用父類的功能就能完成相應的操作。

多型成員變數:編譯執行看左邊

fu f=new zi();

system.out.println(f.num);//f是fu中的值,只能取到父中的值

2.多型成員方法:編譯看左邊,執行看右邊

fu f1=new zi();

system.out.println(f1.show());//f1的門面型別是fu,但實際型別是zi,所以呼叫的是重寫後的方法。

上轉型和下轉型的用途是什麼?

*我也是從別的博主那裡看了之後才理解的,特意記錄一下防止以後忘記,下面給出鏈結,寫的很詳細。

涉及到泛型時會有用。我們要把有某一共同特性的東西湊到一塊,比如往購物車裡加手機,電腦,平板。他們是不同的類,要放到乙個list裡面不可能,這時我們寫乙個抽象類,是電子產品類,讓手機,電腦,平板繼承這個類。而list就能裝下所有的產品。這個list的add的過程就是向上轉型。但是向上轉型的時候丟失了子類特有的方法,我們要用子類的方法怎麼辦呢,這個時候就要向下轉型,就可以了。詳細解釋請看上方鏈結。

多型,向上轉型和向下轉型

參考 1.向上轉型 father father new son father可以呼叫son類中重寫父類的方法,但不能呼叫son類中其它方法 優點 方法的形參是父類物件 呼叫方法時,傳入的實參是子類物件,方法中的父類形參物件卻可以訪問子類中重寫父類的方法 缺點 父類還是不能訪問子類自己的方法 2.向下...

多型,向上轉型和向下轉型

package zuoye 多型 多型指的是同乙個方法呼叫,由於物件不同可能會有不同的行為。現實生活中,同乙個方法,具體實現會完全不同 多型的要點 1 多型是方法的多型,不是屬性的多型 多型與屬性無關 2 多型的存在要有三個必要條件 繼承,方法重寫,父類引用指向子類物件。3 父類引用指向子類物件後,...

Java多型,向上轉型與向下轉型

多型意味著乙個物件有著多重特徵,可以在特定情況下,表現出不同的狀態,從而對應不同的屬性和方法。具體來說就是指在繼承過程中父類和子類中可以有多個同名但意義或者實現方式不同的屬性或方法,也就是過載和覆蓋。在實際應用中,還有兩種特殊情形 向上轉型和向下轉型。public class user public...