继承
继承是指一个类(子类)从另一个类(父类)继承属性和方法的能力。通过继承,子类可以重复使用父类已定义的属性和方法,而无需重新定义。
在PHP中,使用 extends
关键字来定义子类。例如:
class ParentClass {
protected $name;
public function getName() {
return $this->name;
}
}
class ChildClass extends ParentClass {
public function __construct() {
$this->name = "Child Class";
}
}
$obj = new ChildClass();
echo $obj->getName(); // Output: "Child Class"
从这段代码中我们可以看到,ChildClass
继承了 ParentClass
的属性和方法,并且它可以使用 ParentClass
的属性和方法。
多态
多态是指对象可以以不同方式回应相同的请求。在PHP中,多态可以通过方法重写(Method Overriding)来实现。
方法重写是指子类可以重新定义父类的方法,并提供自己的实现。例如:
class ParentClass {
public function greet() {
echo "Hello world!";
}
}
class ChildClass extends ParentClass {
public function greet() {
echo "Hello from Child Class!";
}
}
$obj = new ParentClass();
$obj->greet(); // Output: "Hello world!"
$obj = new ChildClass();
$obj->greet(); // Output: "Hello from Child Class!"
从这段代码中我们可以看到,ChildClass
重写了父类 ParentClass
的 greet()
方法,并提供了自己的实现。当我们调用 $obj->greet()
时,将根据 $obj
的实际类型调用相应的方法。
继承和多态是面向对象编程的重要概念,它们可以帮助我们编写更加健壮、可扩展和可维护的代码。