加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

PHP继承实例详细讲解

发布时间:2020-05-31 12:32:20 所属栏目:PHP 来源:互联网
导读:本文章向大家介绍PHP继承实例详细讲解,需要的朋友可以参考一下

PHP继承

这时一篇迟来的更新,因为它应该在前两天就被更新了,但是由于我英语四级没过!没过!没过!导致我心情低落,所以就玩了几天的游戏,哦不,进行了几天反思,痛定思痛 痛何如哉!

以下都是我个人的理解,有错的地方还望不吝赐教。


为什么需要继承?


继承就是 一个子类通过extends父类把父类的属性和方法继承下来。


假设现在现在需要写两个类,小学生类和高中生类,小学生会说话,走路,考试,高中生也会说话走路,考试,那么如果你写两遍说话,走路,考试,那么就会显得臃肿,管理起来也会麻烦很多,如果定义一个类叫做学生类包含说话,走路,考试,然后让小学生类和高中生类来继承这个学生类就会显得好很多,比如这样。

class student{

function speak(){

echo '说话';

}

function walk(){

echo '走路';

}

function test(){

echo '考试';

}

}

class pupil extends student{

function test(){

echo '小学生考试';

}

}

class senior extends student{

function test(){

echo '高中生考试';

}

}

$pupil=new pupil();

$pupil->speak();

$pupil->walk();

$pupil->test();

echo '
';

$senior=new senior();

$senior->speak();

$senior->walk();

$senior->test();

?>

输出:

说话走路小学生考试

说话走路高中生考试

这样代码管理起来就会好很多。


假设现在小学生要学习一个新的技能吃东西,我现在这样写。

class student{

function speak(){

echo '说话';

}

function walk(){

echo '走路';

}

function test(){

echo '考试';

}

}

class skill{

function eat(){

echo '吃东西';

}

}

class pupil extends student,skill{

function test(){

echo '小学生考试';

}

}

$pupil=new pupil();

$pupil->speak();

$pupil->walk();

$pupil->test();

$pupil->eat();

?>

如果这样写,那么就会报错:

Fatal error: Class 'studentskill' not found in D:xampphtdocs1.php on line 18

因为php中是不能这样实现多继承的,如果想要实现多继承可以这么写:

class student{

function speak(){

echo '说话';

}

function walk(){

echo '走路';

}

function test(){

echo '考试';

}

}

class skill extends student{

function eat(){

echo '吃东西';

}

}

class pupil extends skill{

function test(){

echo '小学生考试';

}

}

$pupil=new pupil();

$pupil->speak();

$pupil->walk();

$pupil->test();

$pupil->eat();

?>

输出:

说话走路小学生考试吃东西

先用一个skill类继承student类,然后再用pupil类继承skill类,这样就相当于pupil类继承了student类和skill类。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读