extends 是 PHP 中的一個重要的特性,用于實現類的繼承。通過 extends,我們可以創建一個類,在這個類的基礎上再創建一個新的類,新的類繼承了原來類的所有屬性和方法,并且可以對原有的屬性和方法進行重寫或者擴展。下面我們就來詳細介紹一下 extends 的作用以及使用方法。
extends 的作用主要是實現類的繼承,可以讓我們復用已有的代碼,同時也可以讓我們更加方便的對原有的代碼進行擴展和修改。下面我將用一個簡單的例子來說明,假設我們已經有了一個 Dog 類:
class Dog { public $name; public function bark() { echo "汪汪!"; } }現在我們想創建一個新的類,叫做 Labrador,這個類需要繼承 Dog 類的所有屬性和方法,并且需要添加新的屬性和方法:
class Labrador extends Dog { public $color; public function shed() { echo "狗毛到處飛!"; } }這樣,我們就成功的創建了一個新的類 Labrador,這個類繼承了 Dog 類的所有屬性和方法,并且新增了一些新的屬性和方法。 除了可以繼承原有的屬性和方法,我們還可以對原有的屬性和方法進行重寫。下面我將用代碼來演示一下:
class Dog { public $name; public function bark() { echo "汪汪!"; } } class Labrador extends Dog { public function bark() { echo "我是一只拉布拉多犬,汪汪!"; } } $dog = new Dog(); $labrador = new Labrador(); $dog->bark(); // 輸出“汪汪!” $labrador->bark(); // 輸出“我是一只拉布拉多犬,汪汪!”可以看到,當我們用 Labrador 類實例化一個對象,并調用它的 bark() 方法時,會輸出“我是一只拉布拉多犬,汪汪!”而不是原來的“汪汪!”這就是因為我們在 Labrador 類中對 bark() 方法進行了重寫。 除了對方法進行重寫,我們還可以對屬性進行重寫。這些都是 extends 在 PHP 中非常強大的特性。 下面我們再來看一個實例代碼:
class Dog { public $name; public $age = 2; } class Labrador extends Dog { public $age = 5; } $dog = new Dog(); $labrador = new Labrador(); echo $dog->age; // 輸出“2” echo $labrador->age; // 輸出“5”在這個例子中,我們定義了兩個類,一個是 Dog,另一個是 Labrador。兩個類都有一個 age 屬性,并且 Labrador 類重寫了 Dog 類中的 age 屬性。當我們用 Labrador 類實例化一個對象時,調用它的 age 屬性時會輸出“5”。 綜上所述,extends 是 PHP 中非常重要的一個特性,它可以讓我們更加方便地實現類的繼承、代碼的復用和擴展。在實際編程中,我們經常會用到 extends,學習和掌握它的使用方法對于提高自己的編程能力非常有幫助。
上一篇extends php
下一篇extjs php 分頁