91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP實現多態代碼實例

發布時間:2021-09-02 09:48:10 來源:億速云 閱讀:133 作者:chen 欄目:開發技術

這篇文章主要講解了“PHP實現多態代碼實例”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“PHP實現多態代碼實例”吧!

多態定義:只關心一個接口或者基類,而不關心一個對象的具體類。(同一類型,不同結果)

這里兩個例子:

第一個,我們發現,基類定義了標準,子類進行了自我規則的實現。這是多態的一個要求。同時,這是滿足重寫;實際上這是不同類的不同表現;沒有嚴格滿足一個接口,或者基類編程。因為你調用的時候不是 stu->showGrade() 而是各自自己的方法;

class stu{

  public function showGrade(){
    echo "base class";  
  }

}


class xiaomin extends stu{

  public function showGrade(){
    echo "is son show 80";  
  } 
}

class xiaoli extends stu{

  public function showGrade(){
    echo "is son show 60";  
  } 
}

function doit($obj){

  if(get_class($obj) != "stu"){
    $obj->showGrade();
  }

}

doit(new xiaoli());
doit(new xiaomin());

第二個例子:dovoice 參數規定了$obj 為animal,意識就是用接口 接受了 實現類對象。了向上轉型。這就符合同一類型,不同結果了,這就是多態;

實際上在Java中 會是 animal a = new dog();這樣子的;因為PHP 是若類型語言。沒有對象轉型機制。

interface animal{
  public function voice();
}

class cat implements animal{
  public function voice(){
    echo "miao~~~<br>";
  }
}

class dog implements animal{
  public function voice(){
    echo "wang ~~~<br>";
  }
}

function dovoice(animal $obj){
  $obj->voice();
}


dovoice(new dog());
dovoice(new cat());

感謝各位的閱讀,以上就是“PHP實現多態代碼實例”的內容了,經過本文的學習后,相信大家對PHP實現多態代碼實例這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

吴忠市| 漳州市| 普宁市| 镇坪县| 靖江市| 浦县| 枝江市| 武冈市| 临澧县| 奉贤区| 常熟市| 渭南市| 石屏县| 固始县| 白山市| 榆林市| 北安市| 蓬安县| 观塘区| 平阴县| 象州县| 若尔盖县| 巨野县| 城固县| 抚远县| 铜山县| 济源市| 莆田市| 亳州市| 明光市| 漯河市| 白玉县| 遵义市| 洱源县| 博白县| 丰都县| 宁阳县| 牙克石市| 和平区| 元阳县| 瑞金市|