如何在 PHP 的子類中呼叫父建構函式?
在子類中呼叫父建構函式方法時,我們會遇到兩種情況。
情況 1
如果子類定義了一個建構函式,我們無法直接在子類中執行父類的建構函式。為了執行父類建構函式,在子類建構函式中需要呼叫 parent::__construct() 。
示例
<?php
class grandpa{
public function __construct(){
echo "I am in Tutorials Point"."
";
}
}
class papa extends grandpa{
public function __construct(){
parent::__construct();
echo "I am not in Tutorials Point";
}
}
$obj = new papa();
?>Output: I am in Tutorials Point I am not in Tutorials Point
說明
在上面的示例中,我們使用了 parent::__construct() 來呼叫父類的建構函式。
情況 2
如果子類沒有定義一個建構函式,它可以像普通類方法一樣從父類繼承(如果它不是被宣告為私有方法)。
示例
<?php
class grandpa{
public function __construct(){
echo "I am in Tutorials point";
}
}
class papa extends grandpa{
}
$obj = new papa();
?>輸出
I am in Tutorials point
說明
此處,父類被隱式呼叫,因為在子類中我們沒有在子類中宣告任何建構函式函式。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP