在PHP中,parent關(guān)鍵字通常用于調(diào)用父類中的方法或?qū)傩浴5?,還有一些高級用法可以使用parent關(guān)鍵字。
class ParentClass {
public static $staticProperty = 'I am a static property in parent class';
public static function staticMethod() {
return 'I am a static method in parent class';
}
}
class ChildClass extends ParentClass {
public static function childMethod() {
// 訪問父類的靜態(tài)屬性
echo parent::$staticProperty;
// 調(diào)用父類的靜態(tài)方法
echo parent::staticMethod();
}
}
ChildClass::childMethod();
class ParentClass {
public function __construct() {
echo 'Parent constructor called';
}
}
class ChildClass extends ParentClass {
public function __construct() {
parent::__construct();
echo 'Child constructor called';
}
}
new ChildClass();
在以上示例中,當(dāng)創(chuàng)建ChildClass對象時,首先會調(diào)用ParentClass的構(gòu)造函數(shù),然后才會調(diào)用ChildClass的構(gòu)造函數(shù)。
class ParentClass {
public function method() {
echo 'Parent method called';
}
}
class ChildClass extends ParentClass {
public function method() {
parent::method();
echo 'Child method called';
}
}
$child = new ChildClass();
$child->method();
在以上示例中,ChildClass重寫了ParentClass的method方法,并在重寫的方法內(nèi)部調(diào)用了父類的method方法,以保留父類方法的功能并添加新的功能。