public protected private三种权限的区别总结:
public(公有) | protected(受保护) | private(私有) |
外部 | Y | N | N |
子类中 | Y | Y | N |
本类中 | Y | Y | Y |
<?php class Human { public $money=3000; protected $che='BMW'; private $mv='kt'; public function t1(){ echo $this->money;//自身内部方法调用内部public属性 } public function t3(){ echo $this->che;//自身内部方法调用内部protected属性 } public function t5(){ echo $this->mv;//自身内部方法调用内部private属性 } } class Stu extends Human{ //继承human父类 public function t2(){ echo $this->$money;//子类中方法调用父类的属性 } public function t4(){ echo $this->che;//子类种方法可以调用父类中protected属性 } public function t6(){ echo $this->mv;//子类中方法不可以调用父类private属性 } } $stu=new Stu(); echo $stu->money;//子类外部调用父类public属性 $stu->t1();//子类外部调用父类public方法 $stu->t2();//子类外部调用自身内的public方法 //echo $stu->$che;//子类外部不可以调用父类protected的属性 //echo $stu->$mv;//子类外部不可以调用父类private的属性 $stu->t5();//子类可以外部调用父类含有private属性的方法 //$stu->t6();//子类中不可以外部调用自身中含有父类private的属性的方法 ?>