PHP面向對象編程學習之一
繼承
1、父類裡面定義的類成員可以不用在子類中重復定義,節約了編程時間和代價
2、同一個父類的子類擁有相同的父類定義的類成員,因此外部代碼調用他們的時候可以一視同仁。
3、子類可以修改和調整父類定義的類成員
weight;
}
public function setWeight($w)
{
$this->weight = $w;
}
}
class Dog extends Animal
{
/**
*子類新增方法
*/
public function Bark()
{
echo "Wang~~Wang~~~ ";
}
}
$myDog = new Dog();
$myDog->setWeight(20);
echo "Mydog's weight is ".$myDog->getWeight().'
';
$myDog->Bark();
?>
訪問控制
1、面向對象的三種權限
(1)public:共有的類成員,可以在任課地方訪問
(2)protected:受保護的類成員,可以被其自身以及其子類訪問
(3)private:私有的類成員,只能被自身訪問。
靜態關鍵詞(static)
1、靜態屬性用於保存類的共有數據
2、靜態方法裡面只能訪問靜態屬性
3、靜態成員不需要實例化對象就可以訪問
4、類的內部可以通過self或者是static關鍵詞訪問自身靜態成員
5、通過parent關鍵字可以訪問父類的靜態成員
6、可以通過類的名稱在類定義外部訪問靜態成員
final成員
1、對於不想被任何類繼承的類可以在class之前添加final關鍵字
2、對於不想被子類重寫的方法,可以在方法定義的前面添加final關鍵字
數據訪問
1、parent關鍵詞可以用於訪問父類中被子類重寫的方法
2、self關鍵字可以訪問類自身的成員方法,也可以用於訪問自身的靜態成員和類常量;不能用於訪問類自身的屬性;使用常量的時候不需要再常量名稱前面添加'$'符號
3、static關鍵字用於訪問類自身定義的的靜態成員,訪問靜態屬性時需要在屬性前面添加‘$’符號。