在PHP中,abstract關(guān)鍵字用于定義抽象類和抽象方法。抽象類是不能被實(shí)例化的類,它只能被繼承。抽象方法是沒(méi)有具體實(shí)現(xiàn)的方法,必須在子類中被實(shí)現(xiàn)。
abstract class AbstractClass {
// 抽象方法
abstract protected function abstractMethod();
// 普通方法
public function normalMethod() {
// 方法實(shí)現(xiàn)
}
}
class ConcreteClass extends AbstractClass {
// 必須實(shí)現(xiàn)抽象方法
protected function abstractMethod() {
// 方法實(shí)現(xiàn)
}
}
$obj = new ConcreteClass();
需要注意的是,如果一個(gè)類中包含了一個(gè)或多個(gè)抽象方法,那么該類必須聲明為抽象類。抽象類不能被實(shí)例化,只能被繼承。子類必須實(shí)現(xiàn)父類中的抽象方法,否則子類也必須聲明為抽象類。