继承是一个子类从一个基类中继承它的公有和受保护的属性和方法,实现对类的复用,同时可以扩展基类。一个类只能继承一个基类,但是一个父类可以被很多个子类继承,使用关键字extens关键字进行继承
//基类
class Person{
public $name = 'person';
private $age =10;
public function eat(){
echo 'eat';
}
private function play(){
echo 'play';
}
}
//一个子类只能继承一个基类
class Man extends Person{
public function sleep(){
echo 'sleep';
}
}
//一个基类可以被多个子类继承
class Woman extends Person{
public function getAge(){
echo $this->age; //子类不继承父类的私有属性报错:Undefined property: Woman::$age
}
}
$manObj = new Man();
echo $manObj->name; //继承基类的公有属性
$manObj->eat();//继承基类的公有方法
$womanObj = new Woman();
$womanObj->getAge(); //报错:Undefined property: Woman::$age