一、什麼是多型
多型是同乙個行為具有多個不同表現形式的能力,多型就是同乙個介面,使用不同的例項而去執行不同操作。
二、多型的優點
1.消除型別之間的耦合關係
2.可替換性
3.可擴充性:增加新的子類不影響已存在類的多型性、繼承性,以及其他特性的執行和操作。實際上新加子類更容易獲得多型功能。
4.介面性:多型是超類通過方法簽名,向子類提供了乙個共同介面,由子類來完善或者覆蓋它而實現。
5.靈活性:多型體現靈活多樣的操作,提高了使用效率。
6.簡化性:簡化**的編寫和修改過程,尤其在處理大量物件的運算和操作。
多型可以使程式有良好的擴充套件,可以對所有類的物件進行通用處理。但不能解決提高執行速度的問題,因為它基於動態裝載和位址引用。
三、多型存在的三個必要條件
1.繼承
2.重寫
3.父類引用指向子類物件
四、虛方法
虛方法描述被重寫的方法的行為怎樣影響多型性。
方法的重寫,也就是子類能夠重寫父類的方法。當子類物件呼叫重寫的方法時,呼叫的
是子類的方法,而不是父類中被重寫的方法。要想呼叫父類中被重寫的方法,則必須使用關鍵字super。
五、引用型別轉換
向上轉型:使用多型時,父類引用子類
向下轉型:強制型別轉換,父類轉子類,instanceof判斷乙個物件是否屬於乙個類或者實現了乙個介面,檢驗物件的真實型別避免型別轉換異常。
java物件導向的特徵
物件 由行為 狀態和唯一標誌組成。一 抽象 抽象是忽略乙個主題中與當前目標無關的方面,把現實世界中的概念轉換為物件,可以是表示資料的vo物件或抽象類,也可以是表示一類行為的介面。有利於從眾多變化的狀態中抽離出不變的東西。有利於使用繼承來構造類的體系,實現多型,使用模板和工廠模式方法來實現對業務過程的...
0808 Java物件導向特徵之封裝
一 物件導向的定義 物件 用來描述客觀事物的乙個實體,由一組屬性和方法構成 屬性 物件具有的各種特徵,每個物件的每個屬性都擁有特定值 方法 物件執行的操作 二 類圖 用於分析和設計類 三 封裝 private 將類的某些資訊隱藏在類內部,不允許外部程式直接訪問,而是通過該類提供的方法來實現對隱藏資訊...
物件導向特徵之封裝
1 關於封裝 為什麼要封裝?為了保護敏感 隱私屬性資料,讓外界訪問當前物件中的屬性資料時,可以按照我們指定的條件進行訪問,否則不允許訪問,提高屬性資料的安全性。怎麼封裝?實現封裝的步驟 1.將當前型別中所有屬性私有化。2.給每個屬性提供訪問屬性資料的set get方法。3.給敏感屬性的訪問方法中,新...