继承将会影响到类与类,对象与对象之间的关系。
比如,当扩展一个类,子类就会继承父类所有公有的和受保护的方法。除非子类覆盖了父类的方法,被继承的方法都会保留其原有功能。
一个类,被多个子类继承,如果这个类的某个方法,在多个子类中,表现出不同的功能,我们称这种行为为多态。
实例
<?php class Fu //父类 { public $name;//公共的 protected $age;//受保护的 private $grade;//私有的 const APP='教师管理系统';//常量 //父类构造器 public function __construct($name,$age) { $this->name= $name;//初始化属性 $this->age= $age; } } class ZiLei extends Fu //子类 { private $sex; const APP='学生管理系统';//常量在子类中可以修改 //子类构造器 父类的必须要在写一遍 public function __construct($name,$age,$sex) { parent::__construct($name,$age); $this->sex= $sex; } //属性访问重载 public function __get($name) { if (isset($this->$name)){ return $this->$name; } return '属性不存在'; } } $obj = new ZiLei('小样','80','man'); echo $obj->name,'<hr>'; echo $obj->age,'<hr>'; echo $obj->bbb,'<hr>'; echo $obj->sex,'<hr>'; echo Fu::APP,'<hr>'; echo ZiLei::APP,'<hr>';
运行实例 »
点击 "运行实例" 按钮查看在线实例