溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于PHP面向對象的繼承講解

發布時間:2020-04-20 10:18:00 來源:億速云 閱讀:221 作者:小新 欄目:編程語言

這篇文章主要為大家詳細介紹了關于PHP面向對象的繼承講解,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下。

關于PHP面向對象的繼承講解

一、簡介

?1、繼承是從一個基類得到一個或多個類的機制,可以實現對類的復用

?2、子類將繼承父類的屬性和方法,同時可以擴展父類

二、如何繼承一個類

?1、PHP是單繼承的,一個類只可以繼承一個父類,但一個父類卻可以被多個子類所繼承。

?2、子類不能繼承父類的私有屬性和私有方法

?3、類的方法可以被繼承,類的構造函數也能被繼承

?4、繼承的方法:使用extends關鍵字

//定義一個基類
class Book{
	public $name;
	public $price;
	private $page;
	public function __construct($name){
		$this->name = $name;
	}
	public function getName(){
		return $this->name;
	}
}

//定義一個子類,并繼承基類
class NoteBook extends Book{

}

//實例化子類,并繼承基類構造方法
$notebook = new NoteBook('book');

//子類繼承的屬性
echo $notebook->name;//結果為book

//子類繼承的屬性
echo $notebook->getName();//結果為book

//子類不能訪問基類的私有屬性
echo $notebook->page; //錯誤

三、如何繼承一個類

?1、可以在類的屬性和方法前面加上一個修飾符,來對類進行一些訪問上的控制

?2、private : 不能直接被外部調用,只能在當前類的內部調用

?3、protected : 修飾的屬性和方法只能被當前類內部或子類調用,外界無法調用

?4、public : 修飾的屬性和方法,可以被無限制地調用

四、重寫

?1、如果從父類繼承的方法不能滿足子類的需求時,可以對其進行改寫,這個過程叫方法的重寫。

?2、子類中覆蓋的方法,不能使用比父類被覆蓋方法更嚴格的訪問權限。

?3、父類的構造方法,也可以重寫。

//定義一個子類,并繼承基類
class NoteBook extends Book{
//覆寫基類的方法
public function getName(){
return 'The book name is'.$this->name;
}
}

五、parent:: 關鍵字

?1、使用parent::來引用父類的方法,同時也可以用于調用父類中定義的成員方法。

public function getName(){
//調用父類的方法
return 'The book name is '.parent::getName();
}

以上就是關于PHP面向對象的繼承講解的簡略介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注億速云行業資訊頻道哦!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女