4.8 多型
定義:某一類事物的多種存在形態。
例:動物中貓,狗。
貓這個物件對應的型別是貓型別:貓x=new貓();
同時貓也是動物中的一種,也可以把貓稱為動物:動物y=new貓();
動物是貓和狗具體事物中抽取出來的父型別。
父型別引用指向了子類物件。
多型性簡單說就是乙個物件對應著不同型別。
體現:
父類或者介面的引用指向或者接收自己的子類物件。
作用:
多型的存在提高了程式的擴充套件性和後期可維護性。
前提:
1.需要存在繼承或者實現關係。
2.需要有覆蓋操作。
好處:
提高了**的擴充套件性,前期定義的**可以使用後期的內容。
弊端:
前期定義的內容不能使用(呼叫)後期子類的特有內容。
instanceof:用於判斷物件的具體型別,只能用於引用資料型別判斷,通常在向下轉型前用於健壯性的判
斷。多型時,成員的特點:
1.成員變數
編譯時:參考引用型變數所屬的類中是否有呼叫的成員變數。有,編譯通過,沒有,編譯失敗。
執行時:參考引用型變數所屬的類中是否有呼叫的成員變數,並執行該所屬類中的成員變數。
簡單說:編譯和執行都參考等號的左邊
2.成員函式(非靜態)
編譯時:參考引用型變數所屬的類中是否有呼叫的函式。有,編譯通過。沒有,編譯失敗。
執行時:參考的是物件所屬的類中是否有呼叫的函式。
簡單說:編譯看左邊,執行看右邊。
3.靜態函式
編譯時:參考的是物件所屬的類中是否有呼叫的函式。
執行時:參考的是物件所屬的類中是否有呼叫的函式。
簡單說:編譯和執行看左邊。
JAVA基礎 多型
概念 乙個事物的多種形態 多型前提和體現 1.有繼承關係或者實現關係 2.有方法重寫 3.有父類引用指向子類物件 父類 public class fu 子類 public class zi extends fu public class demo 1.提高了程式的維護性 由繼承保證 我的理解 1.如...
java基礎多型
首先定義乙個boss,叫zeroboss,會使用各種兵器,收了兩個徒弟,並分別贈送他們一件兵器 package zzq public class zeroboss 然後定義乙個zero的徒弟一zeroone,會使用屠龍刀 package zzq public class zeroone extend...
Java基礎 多型
多型性是指允許不同型別的物件對同一訊息做出相應。具有靈活性 抽象 行為共享 共享的優勢,共享就意味著最大化利用和簡潔,還有就是載入速度。一 多型的作用 消除型別之間的耦合關係。即同一事件發生在不同的物件上會產生不同的結果。二 多型的實現形式 1.過載 發生在同乙個類中 2.覆蓋 發生在子類中 三 多...