国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP抽象類 介紹

2024-05-04 23:14:43
字體:
來源:轉載
供稿:網友
在自然語言中,我們理解抽象的概念是,一個物體的一種大的描述,這種描述對某類物體來說是共有的特性。那么在PHP中也是一樣的,我們把一個類進行抽象,可以指明類的一般行為,這個類應該是一個模板,它指示它的子方法必須要實現的一些行為。
PHP抽象類應用的定義:
abstract class ClassName{
}

PHP抽象類應用要點:
  1.定義一些方法,子類必須完全實現這個抽象中所有的方法
  2.不能從抽象類創建對象,它的意義在于被擴展
  3.抽象類通常具有抽象方法,方法中沒有大括號

PHP抽象類應用重點:
  1.抽象方法不必實現具體的功能,由子類來完成
  2.在子類實現抽象類的方法時,其子類的可見性必須大于或等于抽象方法的定義
  3.抽象類的方法可以有參數,也可以為空
  4.如果抽象方法有參數,那么子類的實現也必須有相同的參數個數

PHP抽象類應用示例:
abstract public function_name(); //注意沒有大括號
PHP抽象類規則:
某個類只要至少含有一個抽象方法,就必須聲明為抽象類
抽象方法,不能夠含有函數體
繼承抽象類的子類,實現抽象方法的,必須跟該抽象方法具有相同或者更低的訪問級別
繼承抽象類的子類,如果不實現所有抽象方法,那么該子類也為抽象類
作為演示,我們來實現一個簡單的抽象類:計算矩形的面積。這個矩形可以從形狀類擴展。

復制代碼 代碼如下:


< ?PHP
abstract class Shape {
abstract protected function get_area();
//和一般的方法不同的是,這個方法沒有大括號
//你不能創建這個抽象類的實例:$Shape_Rect= new Shape();
}
class Rectangle extends Shape{
private $width;
private $height;
function __construct($width=0,
$height=0){
  $this->width=$width;
  $this->height=$height;
}
function get_area(){
  echo ($this->width+$this->height)*2;
}
}
$Shape_Rect = new Rectangle(20,30);
$Shape_Rect->get_area();
?>


這也算是一個簡單的例子,基本上可以說明PHP中抽象類的用法了,其他的不想多說了。個人覺得抽象類一般在大的項目才會用吧,因為我覺得它實在是要遵守的”規矩”太多了,用起來不方便!當然這只是我的意見。還想多說一些,PHP抽象類應用是單繼承的,也就是說你只能從一個類繼承,而不能一個類繼承了A類,又繼承B類,如果要實現這樣的功能,得使用接口相關的知識了,在此暫時不討論PHP接口的知識!一句話:單繼承多接口中!
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辰溪县| 镇安县| 隆化县| 白城市| 孝义市| 古蔺县| 怀化市| 通许县| 金川县| 鸡东县| 阿勒泰市| 旬邑县| 桦甸市| 沂水县| 堆龙德庆县| 岳阳市| 盐城市| 望都县| 满洲里市| 安塞县| 楚雄市| 五华县| 陆丰市| 阳朔县| 河池市| 乌兰察布市| 大荔县| 宜兴市| 察隅县| 嘉义市| 瓦房店市| 三穗县| 明水县| 石阡县| 聂荣县| 江达县| 井陉县| 隆昌县| 达拉特旗| 南康市| 宕昌县|