PHP接口特性的實例講解

我們在通過學習PHP語言的時候經常會遇到一些問題,這是好事,發現問題,解決問題才能提高我們的知識,鞏固我們所掌握的要點。最近在看PHP的OOP特性,發現和JAVA很像,就是語法上有不同,但是有關資料少的可憐,找到了幾個也不能充分說明PHP接口特性,自己又看了一遍孫鑫老師的JAVA視頻教程,有關接口的部分,昨天總算是理解了。真的感覺是豁然開朗。把自己寫的PHP接口部分的示例程序發上來,讓大家對PHP接口特性有一個清晰的認識。

VideoCard.php 接口文件(顯卡的功能接口定義)

    <?php 
    interface VideoCardInter{  
        function Display();  
        function getName();  
    }  
    ?> 

Dmeng.php 實現接口(帝盟的廠家實現了這些接口,怎麼實現的,主板廠家不用管)

    <?php 
    include_once("VideoCard.php");  
    class Dmeng implements VideoCardInter {  
        function Display(){  
            echo "Display";  
        }  
        function getName(){  
            return "Dmeng VideoCard";  
        }  
    }  
    ?> 

Mainboard.php  應用接口(把顯卡插到主板上,主板只要用這些接口就行了,也可以不用)

    <?php 
    include_once("VideoCard.php");  
    include_once("Dmeng.php");  
    class Mainboard{  
        var $vc;  
        function run(VideoCardInter $vc){  //定義VideoCardInter接口類型參數,這時並不知道是誰來實現。  
            $this->vc=$vc;  
            $this->vc->Display();  
            echo "主板運行!";  
        }  
    }  
    $conputer=new Mainboard();  
    $conputer->run(new Dmeng);  //用的時候把實現接口類的名稱寫進來,
    (現在是帝盟的顯卡,也可以換成別的場家的,只要他們都實現了接口)  
    ?> 

由於PHP是動態語言,所以類型不能像JAVA一樣定的很死,定義接口的時候,寫上返回類型反而出錯,估計PHP6的時候可能寫義的要嚴格一些吧。

PS:我只把PHP接口特性最基本的部分寫上,還可以加CPU等接口。

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