天天看點

初識面向對象第三特征-多态 | 帶你學《Java面向對象程式設計》之四十七

上一篇:千字走進注解的領域 | 帶你學《Java面向對象程式設計》之四十六

【本節目标】

通過閱讀本節内容,你将初步了解多态性的意義,并認識到在以往的程式設計過程中處處展現着多态的思想,初步了解實作多态性的幾種模式。

多态性是面向對象中的第三大主要特征,多态性是在繼承性的基礎之上擴充出來的概念,也就是說可以實作父子類之間的互相轉換處理。

多态性的基本概念

在Java之中對于多态性有兩種實作的模式:

  • 方法的多态性:
    • 方法的重載:同一個方法名稱可以根據傳入的參數的類型或個數的不同實作不同功能的執行
    • 方法的覆寫:同一個方法可能根據使用子類的不同有不同的實作

方法的重載:

class Message {
public void print() {
    System.out.println(“www.mldn.cn”) ;  
}
public void print(String str) {
    System.out.println(str) ;
}
}           

方法的覆寫:

class Message {
    public void print() {
        System.out.println(“www.mldn.cn”) ;  
    }
}
class DataBaseMessage extends Message {
    public void print() {
        System.out.println(“Oracle資料庫連接配接資訊…..”) ;
    }
}
class NetworkMessage extends Message {
    public void print() {
        System.out.println(“網絡連接配接資訊…..”) ;
    }
}           
  • 對象的多态性:父子執行個體之間的轉換處理,有兩種模式:
    • 對象向上轉型:父類 父類執行個體 = 子類執行個體、自動完成轉換 ;
    • 對象向下轉型:子類 子類執行個體 = (子類)父類執行個體、強制完成轉換。

從實際的轉型處理來講,大部分情況下考慮最多的一定是對象的向上轉型、對于對象的向下轉型往往都在使用子類特殊功能(子類可以對父類進行功能擴充)的時候要采用向下轉型,還有一些時候是不會考慮轉型的(String類)。

想學習更多的Java的課程嗎?從小白到大神,從入門到精通,更多精彩不容錯過!免費為您提供更多的學習資源。

本内容視訊來源于

阿裡雲大學 下一篇:領略多态的魅力-對象向上轉型 | 帶你學《Java面向對象程式設計》之四十八 更多Java面向對象程式設計文章檢視此處