本文實(shí)例講述了PHP abstract 抽象類定義與用法。分享給大家供大家參考,具體如下:
PHP抽象類應(yīng)用要點(diǎn):
1.定義一些方法,子類必須完全實(shí)現(xiàn)這個(gè)抽象中所有的方法
2.不能從抽象類創(chuàng)建對(duì)象,它的意義在于被擴(kuò)展
3.抽象類通常具有抽象方法,方法中沒(méi)有大括號(hào)
PHP抽象類應(yīng)用重點(diǎn):
1.抽象方法不必實(shí)現(xiàn)具體的功能,由子類來(lái)完成
2.在子類實(shí)現(xiàn)抽象類的方法時(shí),其子類的可見(jiàn)性必須大于或等于抽象方法的定義
3.抽象類的方法可以有參數(shù),也可以為空
4.如果抽象方法有參數(shù),那么子類的實(shí)現(xiàn)也必須有相同的參數(shù)個(gè)數(shù)
示例:
//作用:抽象類不實(shí)現(xiàn)具體方法,具體方法由子類完成。
//定義抽象類 abstract
abstract class A{
//abstract 定義抽象類的方法,這里沒(méi)有花括號(hào)。子類必須實(shí)現(xiàn)這個(gè)抽象方法。
abstract public function say();
//抽象類可以有參數(shù)
abstract public function eat($argument);
//在抽象類中可以定義普通的方法。
public function run(){
echo '這是run方法';
}
}
class B extends A{
//子類必須實(shí)現(xiàn)父類的抽象方法,否則是致命的錯(cuò)誤。
public function say(){
echo '這是say方法,實(shí)現(xiàn)了抽象方法';
}
public function eat($argument){
echo '抽象類可以有參數(shù) ,輸出參數(shù):'.$argument;
}
}
$b =new B;
$b->say();
echo 'br>';
$b->eat('apple');
echo 'br>';
$b->run();
運(yùn)行結(jié)果:
這是say方法,實(shí)現(xiàn)了抽象方法
抽象類可以有參數(shù) ,輸出參數(shù):apple
這是run方法
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語(yǔ)法入門(mén)教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- PHP abstract與interface之間的區(qū)別
- 深入解讀php中關(guān)于抽象(abstract)類和抽象方法的問(wèn)題分析
- 詳談PHP中public,private,protected,abstract等關(guān)鍵字的用法
- PHP 抽象方法與抽象類abstract關(guān)鍵字介紹及應(yīng)用
- 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))原理與用法詳解