在学习继承的过程中,感觉学习的比较乱,但是,最后学习下来,感觉也不是太乱,主要就是修饰符的访问权限问题,这里根据我的理解,觉得不太适合用表格来表示显示出来,那么我把在继承的特点来总结出来,便于记忆和理解-----注意:仅仅针对PHP:
1:子类可以访问父类的公开和保护属性,反之,访问私有则不可以。
2:子类最多只能继承一个父类,而父类可以有多个子类。
3:子类不会继承父类的析构函数;
4:如果要在子类里面使用父类的方法,可以用父类名::父类方法来表示或者用parent::父类方法来表示
5:方法和属性在一定程度上为了理解可以是看做等效的。
说明:
1:公开public可以被任意的类或方法访问。
2:保护protected可以被自身的类和子类访问,其它不可以。
3:私有private只能被自身的类访问
这里可以看到他们的权限顺序依次是public>provated>private.我在学习的过程中,把他们总结为六个字:”公保私,全子无“,意思显而易见。
下面是我学习过程中的代码,没有完全概括,仅供参考:
<?php
//继承的使用
class FatherClass{
public $name = 111;
protected $age = 222;
protected $garde = 333; //私有属性不能被子类访问,修改修饰符便可测试
public function ShowInfo(){
echo $this->name."---".$this->age."<br/>";
}
}
class pupil extends FatherClass{
public function tesing(){
/*echo $this->garde."<br/>";*/
echo "小学生考试";
}
}
class garden extends FatherClass{
public function tesing(){
echo "大学考试"."<br/>";
/*echo $this->age."<br/>";*/
FatherClass::ShowInfo();
}
}
$myobj_1 = new garden();
$myobj_1->tesing();
?>