首頁  >  文章  >  後端開發  >  php中的方法重寫是什麼意思

php中的方法重寫是什麼意思

王林
王林原創
2020-11-04 10:45:013051瀏覽

php中的方法重寫是指子類別在繼承父類別的一些方法後,子類別又在內部定義了相同的方法,而這個新定義的方法會覆寫從父類別繼承的方法,子類別只能呼叫其內部定義的方法,這便是方法重寫。

php中的方法重寫是什麼意思

方法重寫:

是指當子類別繼承父類別的一些方法後,子類別又在其內部定義了相同的方法,則這個新定義的方法會覆寫繼承而來的父類別的方法,子類別只能呼叫其內部定義的方法。

(推薦教學:java影片教學

要求:

1、當一個父類別和子類別有一個方法,參數和名字完全一致,那麼子類別方法就會覆寫父類別的方法。

必須參數一致,才會實作方法覆寫。當參數個數不一致,則會報錯(這就牽扯到上面說所得方法重載)。當方法名字不一致,就不會覆蓋,只是子類別新定義的方法。

2、實施方法覆蓋的時候,存取修飾符可以是不一樣的,但是子類別的存取範圍必須大於等於父類別的存取範圍。

這是php這些語言設計時的規定吧。我是這麼理解的是訪問高一層的東西比較容易,如果再去訪問底層的東西權限肯定要高一些。

要求參數和名字一樣。並不是要求子類,父類名稱相同。

是要求參數和名字一樣,具體就是要求參數的數量與父類別相同,而並不是參數名稱一致。即傳遞的參數名字可以為任意,只要保證傳遞的個數相同即可。

範例:

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

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

相關推薦:php訓練

#

以上是php中的方法重寫是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn