溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

關(guān)于PHP面向?qū)ο蟮睦^承講解

發(fā)布時(shí)間:2020-04-20 10:18:00 來源:億速云 閱讀:179 作者:小新 欄目:編程語言

這篇文章主要為大家詳細(xì)介紹了關(guān)于PHP面向?qū)ο蟮睦^承講解,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。

關(guān)于PHP面向?qū)ο蟮睦^承講解

一、簡(jiǎn)介

?1、繼承是從一個(gè)基類得到一個(gè)或多個(gè)類的機(jī)制,可以實(shí)現(xiàn)對(duì)類的復(fù)用

?2、子類將繼承父類的屬性和方法,同時(shí)可以擴(kuò)展父類

二、如何繼承一個(gè)類

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

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

?3、類的方法可以被繼承,類的構(gòu)造函數(shù)也能被繼承

?4、繼承的方法:使用extends關(guān)鍵字

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

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

}

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

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

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

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

三、如何繼承一個(gè)類

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

?2、private : 不能直接被外部調(diào)用,只能在當(dāng)前類的內(nèi)部調(diào)用

?3、protected : 修飾的屬性和方法只能被當(dāng)前類內(nèi)部或子類調(diào)用,外界無法調(diào)用

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

四、重寫

?1、如果從父類繼承的方法不能滿足子類的需求時(shí),可以對(duì)其進(jìn)行改寫,這個(gè)過程叫方法的重寫。

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

?3、父類的構(gòu)造方法,也可以重寫。

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

五、parent:: 關(guān)鍵字

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

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

以上就是關(guān)于PHP面向?qū)ο蟮睦^承講解的簡(jiǎn)略介紹,當(dāng)然詳細(xì)使用上面的不同還得要大家自己使用過才領(lǐng)會(huì)。如果想了解更多,歡迎關(guān)注億速云行業(yè)資訊頻道哦!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI