首頁  >  文章  >  後端開發  >  php如何呼叫父類別建構方法?

php如何呼叫父類別建構方法?

coldplay.xixi
coldplay.xixi原創
2020-07-14 11:11:304043瀏覽

php呼叫父類別建構方法:使用parent呼叫父類別的建構,用【::】引用一個類,程式碼為【parent::__construct($title,$firstName,$mainName,$price) 】。

php如何呼叫父類別建構方法?

php呼叫父類別建構方法:

使用parent呼叫父類別的構造方法

要引用一個類別而不是物件的方法,可以使用::(兩個冒號),而不是->

所以, parent::__construct() 為著呼叫父類別的 __construct() 方法。

具體程式碼如下:

<?php
header(&#39;Content-type:text/html;charset=utf-8&#39;);
// 从这篇开始,类名首字母一律大写,规范写法
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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多