繼承是在新建立的類別中擴展現有類別功能的一種方法。除了擴展基類功能之外,我們還可以為新建立的類別添加功能。當我們繼承一個類別時,我們說繼承的類別是一個子類別(子類別),我們從其繼承它的子類別稱為父類別。父類別也稱為基底類別。這種方式可以更好地管理程式碼和程式碼可重複使用性。使用繼承背後的想法是為了更好地管理程式碼和程式碼可重複使用性。在本主題中,我們將學習 PHP 中的繼承。
廣告 該類別中的熱門課程 PHP 開發人員 - 專業化 | 8 門課程系列 | 3次模擬測驗開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
PHP支援各種類型的繼承,就像JAVA一樣。下表顯示了 PHP 中繼承類型的清單以及支援情況。
Inheritance Type | Support in PHP |
Single Inheritance | YES |
Multilevel Inheritance | YES |
Hierarchical Inheritance | YES |
Multiple Inheritance | NO |
PHP 支援單繼承。單繼承是 PHP 中的一個概念,其中單一類別只能繼承一個類別。在這個過程之間我們需要有兩個類別。一個是基底(父)類,另一個是子類。讓我們透過一個例子來理解這一點。它通常被稱為簡單繼承。 PHP語言中的這種繼承方式與JAVA、C++等都是一樣的
代碼:
<?php class MyAccess { var $var = "This is first var"; protected $fist_name; // simple class method function returnVar() { echo $this->fist_name; } function set_fist_name($set_this){ $this->fist_name = $set_this; } } class child extends MyAccess { function setVal($set_this){ $this->fist_name = $set_this; } function getVal(){ echo $this->fist_name; } } $obj1 = new child(); $obj1->setVal("Jai Shre"); $obj1->getVal(); ?>
MyAccess 是父類,子類別是子類別的名稱。
輸出:
PHP 支援多層繼承。在這種類型的繼承中,我們將有兩個以上的類別。在這種類型的繼承中,父類別將被子類別繼承,然後子類別將被子類別繼承。 PHP 語言中的這種繼承類型與 C++ 等語言中的繼承類型相同
代碼:
<?php class ParentClass { var $var = "This is first var"; public $fist_name; // simple class method function returnVar() { echo $this->fist_name; } function set_fist_name($set_this){ $this->fist_name = $set_this; } } class child_1 extends ParentClass { function setVal($set_this){ $this->fist_name = $set_this; } function getVal(){ echo "Extended By Parent Class -". $this->fist_name; } } class child_2 extends child_1 { function setVal($set_this){ $this->fist_name = $set_this; } function getVal(){ echo "Extended By child 1 - ".$this->fist_name; } } $obj1 = new child_1(); $obj1->setVal("This is first inherited class"); $obj1->getVal(); echo "<br/><br/>"; $obj2 = new child_2(); $obj2->setVal("This is second inherited class"); $obj2->getVal(); ?>
輸出:
PHP 支援層次繼承。分層繼承是一種繼承類型,其中程式由單一父類別和多個子類別組成。讓我們透過這個例子來理解。 PHP語言中的這種繼承方式與JAVA、C++等都是一樣的
代碼:
<?php class ParentClass { var $var = "This is first var"; public $fist_name; // simple class method function returnVar() { echo $this->fist_name; } function set_fist_name($set_this){ $this->fist_name = $set_this; } } class child_1 extends ParentClass { function setVal($set_this){ $this->fist_name = $set_this; } function getVal(){ echo $this->fist_name; } } class child_2 extends ParentClass { function setVal($set_this){ $this->fist_name = $set_this." - ".$set_this;; } function getVal(){ echo $this->fist_name; } } $obj1 = new child_1(); $obj1->setVal("This is first child class"); $obj1->getVal(); echo "<br/><br/>"; $obj2 = new child_2(); $obj2->setVal("This is second child class"); $obj2->getVal(); ?>
輸出:
我們有一個名為 ParentClass 的父類和兩個子類,分別為 child_1 和 child_2。給定的繼承場景稱為層次繼承。
繼承的重要性更加重要,因為它具有巨大的優勢。
我們應該使用繼承來完成我們的業務,因為它與普通程式碼相比有一些優勢。我們在處理繼承的時候應該注意資料的安全。我們可以使用 private 和 protected 等存取修飾符來處理資料隱藏和資料安全。 PHP 不支援多重繼承。
以上是PHP 中的繼承的詳細內容。更多資訊請關注PHP中文網其他相關文章!