1. 程式人生 > >面向對象之多態

面向對象之多態

bst 參數 字符 應用 擁有 ted 提示 簡單的 面向對象

面向對象之多態:

  由於子類重寫父類方法,然後用父類引用指向子類對象,調用方法時候會進行動態綁定,這就是多態

面向對象編程之接口:

  接口(interface)是抽象方法和靜態常量定義的集合。 接口是一種特殊的抽象類,這種抽象類中只包含抽象方法和靜態常量。 接口中沒有其它類型的內容

  接口的定義 interface 接口名{ public getName(); public setName($name); } 在接口中的抽象方法只能是 public 的,默認也是 public 權限。 並且不能設置成 private 或者 protected 類型

面向對象編程之抽象:

  ①可以使用 abstract 來修飾一個類或者方法。② 用 abstract 修飾的類表示這個類是一個抽象類, 用 abstract 修飾的方法表示這個方法是一個抽象方法。③ 抽象類不能被實例化。 ④抽象方法是只有方法聲明,而沒有方法的實現內容。

  可以使用 abstract 來修飾一個類。 用 abstract 修飾的類表示這個類是一個抽象類。 抽象類不能被實例化。

  用 abstract 修飾的類表示這個方法是一個抽象方法。 抽象方法,只有方法的聲明部分,沒有方法體。 抽象方法沒有 {} ,而采用 ; 結束。 一個類中, 只要有一個抽象方法, 這個類必須被聲明為抽象類。 抽象方法在子類中必須被重寫。

面向對象編程之多態:

  對象的多態性是指在父類中定義的屬性或行為被子類繼承之後,可以具有不同的數據類型或表現出不同的行為。這使得同一個屬性或行為在父類及其各個子類中具有不同的語義。

  多態這個概念,在 Java 中指的是變量可以指向的對象的類型,可是變量聲明類型的子類。對象一旦創建,它的類型是不變的,多態的是變量。 在 PHP5 中,變量的類型是不確定的,一個變量可以指向任何類型的數值、字符串、對 象、資源等。我們無法說 PHP5 中多態的是變量。 我們只能說在 PHP5 中,多態應用在方法參數的類型提示位置。

  一個類的任何子類對象都可以滿足以當前類型作為類型提示的類型要求。 所有實現這個接口的類,都可以滿足以接口類型作為類型提示的方法參數要求。 簡單的說,一個類擁有其父類、和已實現接口的身份。

  多態的實現 1 通過實現接口實現多態 2 通過繼承實現多態

 以上就是面向對象之多態的部分內容。

面向對象之多態