首頁 > 後端開發 > php教程 > PHP抽象類別 繼承抽象類別 uml抽象類別 抽象類別例

PHP抽象類別 繼承抽象類別 uml抽象類別 抽象類別例

WBOY
發布: 2016-07-29 08:53:50
原創
1008 人瀏覽過

對於PHP程式設計師來說,最難掌握的一點要數PHP抽象類別來應用這一知識點。作為一個新手其實也還沒到要用物件導向的知識去編程,但以後進行開發,使用類別進行封裝或使用介面之類,把程式進行各種模組式的開發,這當然是必然的。

在自然語言中,我們理解抽象的概念是,一個物體的一種大的描述,這種描述對某類物體來說是共有的特性。那麼在PHP中也是一樣的,我們把一個類別進行抽象,可以指明類別的一般行為,這個類別應該是一個模板,它指示它的子方法必須實現的一些行為。

PHP抽象類別應用的定義:

abstract class ClassName{

}

PHP抽象類別應用重點:

  1.定義一些方法,子類別必須完全實作這個抽象(.<<.從抽象類別創建對象,它的意義在於被擴展

  3.

抽象類別通常具有抽象方法,方法中沒有大括號

🀎PHP抽象類別應用重點:

 㟀1.抽象方法不必實現具體的功能,抽象方法不必實現具體的功能,抽象方法不必實現具體的功能,抽象方法不必實現具體的功能,抽象方法不必實現具體的功能,由子類別來完成

  2.在子類別實現抽象類別的方法時,其子類別的可見性必須大於或等於抽象方法的定義

  3.抽象類別的方法可以有參數,也可以為空

  4.如果抽象方法有參數,那麼子類別的實作也必須有相同的參數個數

PHP抽象類別應用範例:

abstract public function_name(); //注意沒有大號括號

abstract public function_name(); //注意沒有大號括號

abstract public function_name(); //注意沒有大號括號

PHP抽象類別規則:
  1. 某個類別只要至少含有一個抽象方法,就必須宣告為抽象類別
  2. 抽象方法,不能夠含有函數體
  3. 繼承抽象類別的子類,實作抽象方法的,必須跟該抽象方法具有相同或更低的存取等級
  4. 繼承抽象類別的子類,如果不實作所有抽象方法,那麼該子類別也為抽象類別

作為演示,我們來實作一個簡單的抽象類別:計算矩形的面積。這個矩形可以從形狀類別擴展。

PHP抽象類別 繼承抽象類別 uml抽象類別 抽象類別例

PHP   
<span>abstract</span><span>class</span><span> Shape {   
</span><span>abstract</span><span>protected</span><span>function</span><span> get_area();   
</span><span>//</span><span>和一般的方法不同的是,这个方法没有大括号   
//你不能创建这个抽象类的实例:$Shape_Rect</span>= <span>new</span><span> Shape(); 
}   
</span><span>class</span> Rectangle <span>extends</span><span> Shape{   
</span><span>private</span><span>$width</span><span>;   
</span><span>private</span><span>$height</span><span>;   
</span><span>function</span> __construct(<span>$width</span>=0,
<span>$height</span>=0<span>){   

  </span><span>$this</span>->width=<span>$width</span><span>;   
</span><span>  $this</span>->height=<span>$height</span><span>;   
}   
</span><span>function</span><span> get_area(){   
</span><span>  echo</span> (<span>$this</span>->width+<span>$this</span>->height)*2<span>;   
}   
}   
</span><span>$Shape_Rect</span> = <span>new</span> Rectangle(20,30<span>);   
</span><span>$Shape_Rect</span>-><span>get_area();   
</span>?>   
登入後複製
PHP抽象類別 繼承抽象類別 uml抽象類別 抽象類別例

這也算是一個簡單的例子,基本上可以說明PHP中的抽象類的使用了,其他的用法多說了。個人覺得抽象類別一般在大的項目才會用吧,因為我覺得它實在是要遵守的」規矩」太多了,用起來不方便!當然這只是我的意見。還想多說一些,PHP抽象類應用是單繼承的,也就是說你只能從一個類繼承,而不能一個類繼承了A類,又繼承B類,如果要實現這樣的功能,得使用接口相關的知識了,在此暫時不討論PHP介面的知識!一句話:單繼承多介面中!

以上就介紹了PHP抽象類,包含了php,抽象類別的內容,希望對PHP教學有興趣的朋友有幫助。

🎜
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板