PHP 抽象方法與抽象類abstract關(guān)鍵字介紹及應(yīng)用
PHP 抽象方法與抽象類 abstract 關(guān)鍵字
abstract 關(guān)鍵字用于定義抽象方法與抽象類。
抽象方法
抽象方法指沒有方法體的方法,具體就是在方法聲明的時(shí)候沒有 {} 括弧以及其中的內(nèi)容,而是直接在聲明時(shí)在方法名后加上分號(hào)結(jié)束。
abstract 關(guān)鍵字用于定義抽象方法,語法:
abstract function function_name();
抽象類
只要一個(gè)類里面有一個(gè)方法是抽象方法,那么這個(gè)類就要定義為抽象類。抽象類同樣用 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();
?>
在這個(gè)例子中,父類定義了抽象方法以及對于方法的實(shí)現(xiàn),但實(shí)際的內(nèi)容卻在子類里定義。
- PHP abstract與interface之間的區(qū)別
- 深入解讀php中關(guān)于抽象(abstract)類和抽象方法的問題分析
- PHP abstract 抽象類定義與用法示例
- 詳談PHP中public,private,protected,abstract等關(guān)鍵字的用法
- PHP 面向?qū)ο?final類與final方法
- php類中的$this,static,final,const,self這幾個(gè)關(guān)鍵字使用方法
- PHP面向?qū)ο蟮倪M(jìn)階學(xué)習(xí)(抽像類、接口、final、類常量)
- php中final關(guān)鍵字用法分析
- php中static靜態(tài)變量的使用方法詳解
- php面向?qū)ο笾衧tatic靜態(tài)屬性和靜態(tài)方法的調(diào)用
- PHP中的靜態(tài)變量及static靜態(tài)變量使用詳解
- PHP中abstract(抽象)、final(最終)和static(靜態(tài))原理與用法詳解
相關(guān)文章
PHP學(xué)習(xí)筆記之字符串編碼的轉(zhuǎn)換和判斷
GBK 和 UTF-8 編碼的轉(zhuǎn)換是一個(gè)非常惡心的事情,比如像 PHP 中的 json_encode 本身根本不支持 GBK 形式的編碼。有兩個(gè)庫函數(shù)能夠支持編碼的轉(zhuǎn)換,通常能夠想到的就是 iconv 函數(shù),使用起來也非常爽:2014-05-05
PHP字符串與數(shù)組處理函數(shù)用法小結(jié)
這篇文章主要介紹了PHP字符串與數(shù)組處理函數(shù)用法,結(jié)合實(shí)例形式詳細(xì)分析了PHP字符串與數(shù)組常用處理函數(shù)功能、定義、使用方法與操作注意事項(xiàng),需要的朋友可以參考下2020-01-01
用mysql觸發(fā)器自動(dòng)更新memcache的實(shí)現(xiàn)代碼
不錯(cuò)的一篇文章,用于項(xiàng)目中可以帶來更多的便利,按照方法已經(jīng)調(diào)試成功,可以大大提高項(xiàng)目的速度。2009-10-10
使用PHPStorm+XDebug搭建單步調(diào)試環(huán)境
由于 PhpStorm 不像 Zend 公司為 Zend Studio 那樣配套集成了很多開發(fā)部件,包括解釋器、調(diào)試器、虛擬機(jī)、服務(wù)器、開發(fā)框架等等。因此,配置 PhpStorm 開發(fā)環(huán)境相對較繁瑣,有很多需要注意的地方。2017-11-11
mysql_fetch_assoc和mysql_fetch_row的功能加起來就是mysql_fetch_array
mysql_fetch_assoc和mysql_fetch_row的功能加起來就是mysql_fetch_array...2007-01-01
遞歸刪除一個(gè)節(jié)點(diǎn)以及該節(jié)點(diǎn)下的所有節(jié)點(diǎn)示例
一段遞歸刪除一個(gè)部門以及它的所有子部門的一段代碼。僅供大家參考和自己以后備用2014-03-03

