PHP面向對象-接口。

<?php

header('content-type:text/html;charset=utf-8');
//接口
interface JieKou{
    public function getName();
}
class JieKouShixian implements JieKou {
    public function getName(){
    }
}

// 飛機可以飛,鳥也可以飛,飛螞蟻可以飛,超人可以飛,神仙可以飛

//接口: 它是一個特殊的類,但是名稱變成了interface
//在接口中定義的只能是公共的抽象方法(沒有函數體部分),也可以有靜態常量
//接口採用的插件式配置,可以隨意的匹配給任意一個類
//類可以實現(implements)接口,類實現的接口可以有無數個
//當1個類實現了接口後,該接口的所有的方法必須在該類中實現
interface Fly{
    public function fly();
}

interface JiaYou{
    public function jiayou();
}

class FeiJi implements Fly, JiaYou{
    public function jiayou(){
        echo '飛機需要加油才能飛行';
    }
    public function fly(){
        echo '飛機可以飛';
    }
}
class Niao implements Fly{
    public function fly(){
        echo '鳥可以飛';
    }
}
//飛行要佔用空中通道,而通道是由空中警察來管理,那麼所有能夠飛行的物體都要被空警來管理
class KongJing{
    private $name = '空中警察';
    public function FeiXingGuanLi($fly){
        //instanceof 運算符,它用於類型判斷
        //判斷某個參數對象是否屬於某個類
        if($fly instanceof FeiJi){
            echo '現在是飛機,';
        }elseif($fly instanceof Niao){
            echo '現在是鳥,';
        }else{
            echo '什麼也不是,';;
        }
        $fly->fly();
        echo ',';
        echo $this->name.'管理飛行通道';
    }
}

$kj = new KongJing();
$kj->FeiXingGuanLi(new FeiJi());
echo '<br><br>';
$kj->FeiXingGuanLi(new Niao());
//電腦可以上網,手機可以上網

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