PHP 採單一繼承:class Child extends Parent {}。子類別(派生類)共享父類別(基類)所有 public/protected 屬性與方法。不支援多重繼承(C++ 風格),但可用 Trait 組合行為。
ClassA → ClassB → ClassC // ClassC 擁有 ClassA、ClassB 所有功能,避免屬性/方法重名造成覆蓋混淆
子類別重新定義同名方法即為覆寫。若需保留父類邏輯並擴充,使用 ParentClass::methodName() 靜態呼叫或 parent::methodName()。
<?php
class Root {
public function dayin() {
return "Root print <br />";
}
}
class Son extends Root {
public function dayin() {
// 方式一:parent::dayin() // 推薦
// 方式二:Root::dayin() // 指定類別名
return parent::dayin() . "Son print <br />";
}
}
$s = new Son();
echo $s->dayin();
// 輸出:
// Root print
// Son print
?>
注意:$this->dayin()在子類內會造成無限遞迴,必須用parent::或ParentClass::。
延伸專題:PHP 檔案操作、運算符、網絡編程、基礎語法、Office 文件、日期時間、OOP 入門、字串用法、MySQL 入門、常見資料庫操作匯總。