欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php中的方法重写是什么意思

程序员文章站 2022-03-23 20:18:51
...

php中的方法重写是指子类在继承父类的一些方法后,子类又在内部定义了相同的方法,而这个新定义的方法会覆盖从父类继承的方法,子类只能调用其内部定义的方法,这便是方法重写。

php中的方法重写是什么意思

方法重写:

是指当子类继承父类的一些方法后,子类又在其内部定义了相同的方法,则这个新定义的方法会覆盖继承而来的父类的方法,子类只能调用其内部定义的方法。

(推荐教程:java视频教程

要求:

1、当一个父类和子类有一个方法,参数和名字完全一致,那么子类方法会覆盖父类的方法。

必须参数一致,才会实现方法覆盖。当参数个数不一致,则会报错(这就牵扯到上面说所得方法重载)。当方法名字不一致,就不会覆盖,只是子类新定义的方法。

2、在实行方法覆盖的时候,访问修饰符可以是不一样的,但是子类的访问范围必须大于等于父类的访问范围。

这是php这些语言设计时的规定吧。我是这么理解的是访问高一层的东西比较容易,如果再去访问底层的东西权限肯定要高一些。

要求参数和名字一样。并不是要求子类,父类名称相同。

是要求参数和名字一样,具体就是要求参数的个数与父类相同,而并不是参数名称一致。即传递的参数名字可以为任意,只要保证传递的个数相同即可。

举例:

<?php
class  shao
{
    public function sasa($name){
        echo $name,'狗!<br/>';
    }
}
class zhen extends shao{
    public function aaa()
    {
        echo '猫<br/>';
    }
}
$lli = new zhen();
$lli->aaa();
$lli->aaa('binghh');
?>
<?php
class fu
{
    public function text(){
        echo '父类';
    }
    public  function  textt(){
        echo '父亲';
}
}
class erzi extends fu{
    public function text()
    {
        parent::text();//我要父类的东西
        echo '儿子';//重写

    }
}
$shili = new fu();
$erzi = new erzi();
$erzi->text();
?>

相关推荐:php培训

以上就是php中的方法重写是什么意思的详细内容,更多请关注其它相关文章!

相关标签: php 方法重写