本例用MyObject類產生了兩個子類:Book和Elec,兩個子類用不同的構造方法執行個體化了兩個對象c_book和h_elec,並輸出資訊
<?php/*父類*/class MyObject{public $object_name;//名稱public $object_price;//價格public $object_num;//數量public $object_agio;//折扣function construct($name,$price,$num,$agio){$this -> object_name = $name;$this -> object_price = $price;$this -> object_num = $num;$this -> object_agio = $agio;}function showMe(){echo '這句話不會顯示。';}}/* 子類Book */class Book extends MyObject{public $book_type;//類別function construct($type,$num){$this -> book_type = $type;$this -> object_num = $num;}function showMe(){return '本次新進'.$this -> book_type.'圖書'.$this -> object_num.'<br>';}}/* 子類Elec */class Elec extends MyObject{function showMe(){return '熱賣商品'.$this -> object_name.'<br>原價:'.$this -> object_price.'<br>特價:'.$this -> object_agio * $this -> object_price;}}/*執行個體化對象*/$c_book = new Book('電腦類',1000);$h_elec = new Elec('待機王XX手機',1200,3,0.8);echo $c_book->showMe()."<br>";echo $h_elec->showMe();?>
(1)子類繼承了父類的所有成員變數和方法,包括建構函式。這就是繼承的實現
(2)當子類被建立時,PHP會先在子類中尋找構造方法。如果子類有自己的構造方法,PHP會優先調用子類的構造方法;當子類沒有時,PHP則會調用父類的構造方法
(3)子類重寫了父類的方法showMe(),所以兩個對象雖然調用的都是showMe()方法,但返回的結果卻是兩個不同的資訊 。這就是多態的體現