PHP面向對象-抽象類和接口
目前成都創(chuàng)新互聯已為上千多家的企業(yè)提供了網站建設、域名、網頁空間、網站改版維護、企業(yè)網站設計、柘城網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發(fā)展。抽象類:
一種特殊的類
類中有一個是抽象方法就是抽象類
關鍵字:abstract
抽象類中可以有不是抽象方法或抽象屬性,但訪問權限不是是私有的
抽象類的作用:
使用抽象類就包含了繼承關系
為子類定義了公共接口
為子類提供了規(guī)范和約束
abstract class aa{}
抽象方法:
沒有方法體(聲明時沒有花括號和內容),直接分好結束;
Abstract關鍵字修飾
abstract function aa();
注意:
抽象類不能被實例化,只能被繼承
abstract class aa{ //定義抽象類 只能被繼承不能被實例化
abstract function aa(); //抽象方法抽象類中的成員方法使用時必須被重載
abstract function bb();
}
class bb extends aa{ //繼承抽象類
function aa(){ //實現方法
echo ‘aaaaaaaaaaaaaaaaaaa’;
}
function bb(){}
}
$a=new bb;
$a->aa();
接口:
特殊的抽象類,抽象類的方法都是抽象的
必須為公共的public
常量
抽象方法不需要前面加abstract關鍵字修飾,接口中的方法都是抽象方法
關鍵字:interface
class類實現接口關鍵字:implements
如實現多個接口,可用,(逗號)分割
例:
interface aa{ //聲明一個接口
function insert(); //接口內定義的成員方法 無需前面加abstract修飾
}
interface bb{ //定義第二個接口
function select();
}
interfacecc extends bb{ //接口繼承
function update(); //繼承后的接口可在重新添加新的成員方法
}
class dd implements aa,cc{ //類實現接口 多接口用,(逗號隔開)
function insert(){} //成員方法定義接口內的所有成員方法都必須定義,否則報致命性錯誤 function update(){}
function delete(){}
}
$a= new dd; //實例化對象
另外有需要云服務器可以了解下創(chuàng)新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。