PHP物件導向的執行個體

來源:互聯網
上載者:User

這篇文章主要以代碼為主,主要作用是通過執行個體理解PHP物件導向的介面(interface)和備忘。

定義介面使用interface關鍵字,不在使用class關鍵字;

介面中可以定義常量,不可以定義成員屬性和成員方法,這一點和抽象類別不同(抽象類別可以定義)

介面中的方法全是抽象方法,但是不用abstract關鍵字修飾,沒有實體內容

interface usb{

function connect();//連結USB

function quit();//退出USB

interface chapai{

const DIANYA = '220v';

function charu();//插入

function bachu();//拔出

}

以三個不同的電子裝置為例:不同的裝置實現USB介面的方法不同,進而實現的動作不同

數位相機:插在電腦上彈出圖片瀏覽器 U盾:裝驅動,開啟瀏覽器 手機:充電

class shouji implements usb,chapai{ //一個類可以實現多個介面

function connetc(){

echo '手機充電,顯示手機內容';

}

function quit(){

echo "手機停止充電,退出";

}

function charu(){ //實現插排介面的方法

echo "手機通過".self::DIANYA."電壓充電,插排充電";

}

function bachu(){

echo "手機斷電拔出,離開".self::DIANYA."電壓插排";

}

}

class xiangji implements usb{

function connetc(){

echo "相機插在USB上,顯示圖片";

}

function quit(){

echo "相機拔出";

}

}

class pc{

function usbConnect($usb){ //傳入不同的電子裝置,得到裝置的對象進而就會調用這個電子裝置的連結方法

$obj = new $usb();

$obj->connect();

}

function usbQuit($usb){ //同上,傳入不同的裝置調用相應裝置的退出方法

$obj = new $usb();

$obj->quit();

}

}

$apple = new pc();

$apple->usbConnetc('shouji'); //new出一個電腦的對象,傳入手機就會調用手機串連USB的方法

通過上面的電腦類可以理解為:

手機通過USB串連上電腦,機會調用手機的方法;相機通過USB串連上電腦,就會調用相機的方法



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.