<?php /*1.instanceof关键字:用来判断对象是否属于某个类时使用,例如:$p instanceof classname; 返回的是一个bool型的值;子类创建出来的对象当然属于该子类,同样也必定属于该子类的父类; 2.final关键字:用来修饰类和类中所定义的方法,不能用来修饰成员属性; 当类用final修饰之后就再不能被继承,同样的方法也是; final的作用就是用来确定最终的方法和类(这个方法也就是最终的方法不让子类去改) */ class person{ public $name; protected $age; public $sex; function __construct($name,$age,$sex){ $this->name=$name; $this->age=$age; $this->sex=$sex; } final function say(){ echo "我的名字是{$this->name},我的年纪是:{$this->age},我的性别为:{$this->sex}<br>"; } function eat(){ } function run(){ } } class student extends person{ public $school="大连工业大学"; function say(){ parent::say(); echo "我所在的学校是{$this->school}"; } function study(){ echo "111111111"; } } $stu=new student("刘仁","20","男"); //访问子类中的覆盖方法时会报错,英文父类中的say()方法已经被设置为了final无法被继承和重载 $stu->say(); //下面判断对象是否属于student类,属于输出第一条语句; if($stu instanceof person){ echo "\$stu对象属于student的父类"; } else{ echo "该对象不属于这个父类@!"; } ?>
转载请注明原文地址: https://www.6miu.com/read-80951.html