系統整理 PHP 抽象類的五大核心規則與實作範例,涵蓋類別宣告、抽象方法、實作強制、方法體限制與繼承鏈要求。
abstract class 宣告的類別為抽象類,**不可實例化**(new AbstractClass() 會報錯)abstract function 宣告的方法為抽象方法,**不得有方法體**(不可加大括號)abstract class Animal {
public $name;
protected $price;
abstract function cry(); // 無方法體
public function sleep() { // 一般方法
echo "睡覺中...";
}
}
class Dog extends Animal {
function cry() { // 必須實作
echo "汪汪...";
}
}
// $abc = new Animal(); // 錯誤:抽象類不可實例化
$dog = new Dog();
$dog->cry(); // 汪汪...
$dog->sleep(); // 睡覺中...
{} 會導致語法錯誤Fatal error: Class contains abstract methodparent::__construct() 呼叫