php中的繼承與其他OOP的編程差不多
<?php
class Person
{
protected $name;//可用於子類繼承的屬性
//構造函數
function __construct($name)
{
$this->name = $name;//實例化時賦值變量
echo "我的名字是{$this->name}<br>";//構造函數執行的代碼
}
}
class Student extends Person
{
private $school;//屬於子類私有的屬性
function __construct($name,$school)//重構父類的構造方法
{
parent::__construct($name);//執行父類的構造方法
$this->school = $school;
echo "我就讀於{$this->school}<br>";
}
}
$p1 = new Student("張三","清華");
/*
我的名字是張三
我就讀於清華
*/
?>
只要子類中實現的方法與父類中的方法重名,那麼子類縮寫的方法就會覆蓋掉父類,這時我們如果要執行父類的方法 ,就需要使用parent::方法名來執行父類的方法,如果該方法有參數,也需要將參數存入;而且要注意,子類繼承的方法或者屬性的權限,不能低於父類的,例如父類的是public那麼子類只能繼承爲public,父類是protected,子類可以繼承爲public,但是不能繼承爲private。