abstract 關(guān)鍵字用于定義抽象方法與抽象類。
抽象方法
抽象方法指沒有方法體的方法,具體就是在方法聲明的時候沒有 {} 括弧以及其中的內(nèi)容,而是直接在聲明時在方法名后加上分號結(jié)束。
abstract 關(guān)鍵字用于定義抽象方法,語法:
abstract function function_name();
抽象類
只要一個類里面有一個方法是抽象方法,那么這個類就要定義為抽象類。抽象類同樣用 abstract 關(guān)鍵字來定義。
抽象類不能產(chǎn)生實(shí)例對象,通常是將抽象方法做為子類方法重載的模板使用的,且要把繼承的抽象類里的方法都實(shí)現(xiàn)。實(shí)際上抽象類是方便繼承而引入的。
例子:
代碼如下:
<?php
abstract class AbstractClass{
// 定義抽象方法
abstract protected function getValue();
// 普通方法
public function printOut(){
print $this->getValue()."<br />";
}
}
class ConcreteClass extends AbstractClass{
protected function getValue(){
return "抽象方法的實(shí)現(xiàn)";
}
}
$class1 = new ConcreteClass;
$class1->printOut();
?>
在這個例子中,父類定義了抽象方法以及對于方法的實(shí)現(xiàn),但實(shí)際的內(nèi)容卻在子類里定義。
更多信息請查看IT技術(shù)專欄