php呼叫父類別建構方法:使用parent呼叫父類別的建構,用【::】引用一個類,程式碼為【parent::__construct($title,$firstName,$mainName,$price) 】。
php呼叫父類別建構方法:
使用parent
呼叫父類別的構造方法
要引用一個類別而不是物件的方法,可以使用::
(兩個冒號),而不是->
。
所以, parent::__construct()
為著呼叫父類別的 __construct()
方法。
具體程式碼如下:
<?php header('Content-type:text/html;charset=utf-8'); // 从这篇开始,类名首字母一律大写,规范写法 class ShopProduct{ // 声明类 public $title; // 声明属性 public $producerMainName; public $producerFirstName; public $price; function __construct($title,$firstName,$mainName,$price){ $this -> title = $title; // 给属性 title 赋传进来的值 $this -> producerFirstName= $firstName; $this -> producerMainName = $mainName; $this -> price= $price; } function getProducer(){ // 声明方法 return "{$this -> producerFirstName }"."{$this -> producerMainName}"; } function getSummaryLine(){ $base = "{$this->title}( {$this->producerMainName},"; $base .= "{$this->producerFirstName} )"; return $base; } } class CdProduct extends ShopProduct { public $playLenth; function __construct($title,$firstName,$mainName,$price,$playLenth){ parent::__construct($title,$firstName,$mainName,$price); $this -> playLenth= $playLenth; } function getPlayLength(){ return $this -> playLength; } function getSummaryLine(){ $base = "{$this->title}( {$this->producerMainName},"; $base .= "{$this->producerFirstName} )"; $base .= ":playing time - {$this->playLength} )"; return $base; } } // 定义类 class BookProduct extends ShopProduct { public $numPages; function __construct($title,$firstName,$mainName,$price,$numPages){ parent::__construct($title,$firstName,$mainName,$price); $this -> numPages= $numPages; } function getNumberOfPages(){ return $this -> numPages; } function getSummaryLine(){ $base = "{$this->title}( {$this->producerMainName},"; $base .= "{$this->producerFirstName} )"; $base .= ":page cont - {$this->numPages} )"; return $base; } } ?>
每個子類別都會在設定自己的屬性前呼叫父類別的建構方法。基類(父類)現在只知道自己的數據,而我們也應該盡量避免告訴父類任何關於子類的信息,這是一條經驗規則,大家想想如果某個子類的信息應該是」保密「的,結果父類別知道它的訊息,其它子類別可以繼承,這樣子類別的資訊就不保密了。
#相關學習推薦:PHP程式設計從入門到精通
以上是php如何呼叫父類別建構方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!