這篇文章主要介紹了php中方法重寫指的是什么意思,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
php中的方法重寫是指子類在繼承父類的一些方法后,子類又在內(nèi)部定義了相同的方法,而這個新定義的方法會覆蓋從父類繼承的方法,子類只能調(diào)用其內(nèi)部定義的方法,這便是方法重寫。
方法重寫:
是指當(dāng)子類繼承父類的一些方法后,子類又在其內(nèi)部定義了相同的方法,則這個新定義的方法會覆蓋繼承而來的父類的方法,子類只能調(diào)用其內(nèi)部定義的方法。
要求:
1、當(dāng)一個父類和子類有一個方法,參數(shù)和名字完全一致,那么子類方法會覆蓋父類的方法。
必須參數(shù)一致,才會實現(xiàn)方法覆蓋。當(dāng)參數(shù)個數(shù)不一致,則會報錯(這就牽扯到上面說所得方法重載)。當(dāng)方法名字不一致,就不會覆蓋,只是子類新定義的方法。
2、在實行方法覆蓋的時候,訪問修飾符可以是不一樣的,但是子類的訪問范圍必須大于等于父類的訪問范圍。
這是php這些語言設(shè)計時的規(guī)定吧。我是這么理解的是訪問高一層的東西比較容易,如果再去訪問底層的東西權(quán)限肯定要高一些。
要求參數(shù)和名字一樣。并不是要求子類,父類名稱相同。
是要求參數(shù)和名字一樣,具體就是要求參數(shù)的個數(shù)與父類相同,而并不是參數(shù)名稱一致。即傳遞的參數(shù)名字可以為任意,只要保證傳遞的個數(shù)相同即可。
舉例:
<?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中方法重寫指的是什么意思內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,詳細的解決方法等著你來學(xué)習(xí)!
當(dāng)前標(biāo)題:php中方法重寫指的是什么意思-創(chuàng)新互聯(lián)
地址分享:http://chinadenli.net/article22/idijc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)頁設(shè)計公司、微信小程序、企業(yè)網(wǎng)站制作、響應(yīng)式網(wǎng)站、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容