抽象介面php
⑴ php抽象類和介面的區別
區別:
1、對介面的使用是通過關鍵字implements。對抽象類的使用是通過關鍵字extends。當然介面也可以通過關鍵字extends繼承。
2、介面中不可以聲明成員變數(包括類靜態變數),但是可以聲明類常量。抽象類中可以聲明各種類型成員變數,實現數據的封裝。(另JAVA介面中的成拿此員變數都要聲明為public static final類型)
渣敏斗3、介面沒有構造函數,抽象類可以有構造函數。
4、介面中的方法默認都是public類型的,而抽象類中的方法可以使用private,protected,public來修飾。
5、一個類可以同時實現多個介面,但一個類只能繼承於一個抽象類。
抽象類還是介面。
如果要創建一個模型,這個模型將由一些緊密相關的對象採用,就可以使用抽象類。如果要創建將由一些不相關對象採用的功能,就使用介面。
如果必須從多個來源繼承行為,就使用介面。
如果知道所有類都會共享一個公共的行為實現,就使用抽象類,並在其中如磨實現該行為。
⑵ 在php中抽象類實現介面具體給例子解釋一下!
面向對象的三大概念:封裝,繼承,多態
把屬性和方法封裝起來就是類。
一個類的屬性和方法被另外的類復制就是繼承,PHP裡面的任何類都可以被繼承,被繼承的屬性和方法都可以被子類重新定義,這就是多態性。
抽象類和抽象方法:
所謂抽象方法就是只有名字的空「函數」,而且抽象方法必須是空方法。
所謂抽象類就是包含抽象方法的類,同時抽象類也可以包含普通方法。
因為抽象方法必須是空方法,所以任何子類在繼承抽象類的時候,都必須重新定義抽象方法的具體內涵,才能實現實例化。
介面:
只包含抽象方法的特殊抽象類。
換句話說,介面類中不允許存在普通方法和屬性。
⑶ php中超類,父類,基類,派生類,抽象類,子類,繼承類的區別另外還有些別的什麼類它們還有那些別名
超類也就是父類,用來被繼承的!
基類就是基礎類
派生類也叫子類,倆是一回事!
抽象類是一個不完整的類,只能作為基類,主要是描述類的!裡面只有方法體,沒有實際操作方法!
你這都從來聽來的亂七八糟的東西,估計你自己都要被這些搞的暈頭轉向!