php实现继承
PHP 实现继承的方法
在 PHP 中,继承是通过 extends 关键字实现的。子类可以继承父类的属性和方法,同时可以重写或扩展父类的功能。
基本语法
class ParentClass {
// 父类属性和方法
}
class ChildClass extends ParentClass {
// 子类属性和方法
}
示例代码
class Animal {
public $name;
public function __construct($name) {
$this->name = $name;
}
public function speak() {
echo "Animal sound";
}
}
class Dog extends Animal {
public function speak() {
echo "Woof!";
}
}
$dog = new Dog("Buddy");
echo $dog->name; // 输出: Buddy
$dog->speak(); // 输出: Woof!
访问控制
public:属性和方法可以在任何地方访问。protected:属性和方法只能在类内部和子类中访问。private:属性和方法只能在类内部访问。
方法重写
子类可以重写父类的方法,以改变或扩展其行为。如果需要调用父类的方法,可以使用 parent:: 关键字。
class Cat extends Animal {
public function speak() {
parent::speak(); // 调用父类方法
echo "Meow!";
}
}
防止继承
如果希望类不能被继承,可以使用 final 关键字。
final class FinalClass {
// 类内容
}
多重继承
PHP 不支持多重继承(一个类继承多个父类),但可以通过接口或 trait 实现类似功能。

trait TraitA {
public function methodA() {
echo "Trait A method";
}
}
trait TraitB {
public function methodB() {
echo "Trait B method";
}
}
class MyClass {
use TraitA, TraitB;
}
$obj = new MyClass();
$obj->methodA(); // 输出: Trait A method
$obj->methodB(); // 输出: Trait B method






