php 介面和抽象類
介面:
inte***ce 在介面內定義方法,可不提供具體的**實現
作用:提供乙個規範,如果我們知道乙個類實現了某個介面,那麼就知道了可以呼叫該介面的那些方法,我們只需要知道這些就夠了。
當有很多人一起開發乙個專案時,可能都會去呼叫別人寫的一些類,我怎麼知道他的某個功能的實現方法是怎麼命名的呢,我們定義了乙個介面類時,
它裡面的方式是下面的子類必須實現的,
//實現給介面時,必須實現該介面的三個方法宣告乙個shop介面類,定義了三個方法:買(buy),賣(sell),看(view)
inte***ce
shop
class baseshop implements當我們在團隊開發時,介面提供的規範,將提高我們的開發效率shop
public
function sell($gid
)
public
function view($gid
)
}
$a=new baseshop;
$a->buy(1);//執行buy方法
抽象類
抽象類就把類像的部分抽出來,當你發現你的很多類裡面用很多方法你不斷的在重複寫,那你就可以考慮使用抽象類了
注意:對於抽象類中的方法,子類不用全部實現,對於抽象方法,子類必須實現,若非抽象方法,之類可以重寫覆蓋
<?phpabstract
class
baseshop
public
function sell($gid
)
abstract
function
view();
}
class ballshop extends
baseshop
public
function
open()
public
function
sell()
function
view()
}$a=new
ballshop;
$a->open();
$a->sell();
$a->view();
?>
//結果:你購買了id為 :2314的商品 新的sell方法 實現抽象方法
抽象類裡實現了這些方法,那麼繼承它的子類就自動獲得了這些方法,子類就做它自己獨特的東西,介紹**的重複,提高復用性。
介面和抽象類的區別:
php抽象類和介面
介面 使用介面,你可以指定某個類必須實現那些方法,但是不需要定義這些方法的具體內容,我們可以通過inte ce來定義乙個介面,就像定義標準類一樣,但其中定義所有的方法都是空的,介面中定義的所有的方法都必須是public 實現乙個介面,可以使用implement操作符,類中必須實現介面中定義的所用的方...
php介面 抽象類
定義為抽象的類不能被例項化。任何乙個類,如果它裡面至少有乙個方法是被宣告為抽象的,那麼這個類就必須被宣告為抽象的。抽象類可以沒有抽象方法,但是抽象類依然不能被例項化 被定義為抽象的方法只是宣告了其呼叫方式 引數 不能定義其具體的功能實現。如abstract class abstractclass a...
抽象介面 php,簡述php抽象類和介面例項
抽象類 1 抽象類中可以宣告各種型別的變數。2 類中只要有抽象方法這個類就必須申明為抽象類。抽象方法的定義 abstract 修飾符 function 方法名 param 3 抽象類中的抽象方法,在子類中必須實現,並且保持引數一致,但是可以使用額外的預設值。4 抽象類不可以直接例項化。abstrac...