面向對象PHP(五)

<?php
/**
*   當接口中的某些方法對於所有的實現類都是一樣的實現方法,只有部分方法需要用到多態的特性
*   人和動物吃東西不一樣,呼吸一樣
*/
header("Content-Type: text/html; charset=utf-8");//去除中文亂碼
//abstract關鍵字定義抽象類
abstract class ACanEat{
    //在抽象方法前面加abstract關鍵字可以標明這個方法是抽象方法不需要具體的實現
    abstract public function eat($food);
    //抽象類中可以包含普通的方法,有方法的實現
    public function breath(){
        echo "Breath use the air.<br/>";
    }
}
//繼承抽象類用extends
class Human extends ACanEat{
    //定義抽象類的子類需要對父類中的抽象方法定義
    public function eat($food){
        echo "Human eating ".$food."<br/>";
    }
}

class Animal extends ACanEat{
    public function eat($food){
        echo "Animal eating ".$food."<br/>";
    }
}

$pzy=new Human();
$dog=new Animal();

$pzy->eat("肉");
$dog->eat("骨頭");

$pzy->breath();
$dog->breath();

?>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章