首頁 >後端開發 >php教程 >淺談PHP物件導向的繼承

淺談PHP物件導向的繼承

青灯夜游
青灯夜游轉載
2020-04-14 09:21:383035瀏覽

本篇文章跟大家介紹一下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影片教學

#

以上是淺談PHP物件導向的繼承的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除