詳細(xì)對(duì)比php中類繼承和接口繼承_第1頁
詳細(xì)對(duì)比php中類繼承和接口繼承_第2頁
詳細(xì)對(duì)比php中類繼承和接口繼承_第3頁
詳細(xì)對(duì)比php中類繼承和接口繼承_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第詳細(xì)對(duì)比php中類繼承和接口繼承PHP類繼承:

1、PHP類不支持多繼承,也就是子類只能繼承一個(gè)父類,但是支持多層次繼承

比如:

classfrist{

publicfunction__construct(){

echo"我是第一個(gè)類。","br

publicfunctionprinter(){

echo"frist","br

classsecondsextendsfrist{}

classthirdextendsseconds{}

$obj=newthird();

$obj-printer();

結(jié)果:這是第一個(gè)類。frist第二個(gè)類和第三個(gè)類沒有重寫printer()方法,第三個(gè)類實(shí)例化后可以調(diào)用printer()方法。

2、繼承權(quán)限問題

(1)父類private方法不可被繼承,父類私有化

(2)父類protected方法可以被繼承,但不能被實(shí)例化對(duì)象調(diào)用,如果調(diào)用會(huì)出現(xiàn)"Calltoprotectedmethodfrist::printer()"的報(bào)錯(cuò),父類對(duì)此方法置于保護(hù)模式下

(3)父類public方法可以被繼承、可以被實(shí)例化對(duì)象調(diào)用,屬于公開方法

(4)子類可重寫父類public或者protected的方法,不能重新private的方法,如果同名只是在本類重新聲明

3、接口類繼承

(1)接口支持多繼承,接口類的方法不需要實(shí)現(xiàn)比如:

interfacefrist{

publicfunctionex1();

interfaceseconds{

publicfunctionex2();

interfacethirdextendsfrist,seconds{

publicfunctionex3();

classfourthimplementsthird{

publicfunctionex1(){}

publicfunctionex2(){}

publicfunctionex3(){}

classfourthimplementsfrist,seconds{

publicfunctionex1(){}

publicfunctionex2(){}

}

(2)接口類的方法權(quán)限都是public,默認(rèn)public

(3)引用接口的類必須實(shí)現(xiàn)接口的所有方法,否則會(huì)報(bào)錯(cuò),比如:"Classecontains1abstractmethodandmustthereforebedeclaredabstractorimplementtheremainingmethods",即:e類包含1個(gè)抽象方法,因此必須聲明抽象或?qū)崿F(xiàn)其余方法。

4、抽象類:只要一個(gè)類里面有一個(gè)方法是抽象方法,那么這個(gè)類就要定義為抽象類

(1)抽象類繼承抽象類不能重寫父類方法。

(2)抽象類繼承是對(duì)父類的方法的拓展。

(3)繼承的派生類當(dāng)中要把所有抽象方法重載才能實(shí)例化。

(4)抽象類實(shí)現(xiàn)的普通發(fā)放,可以在非抽象子類中直接調(diào)用。

5、接口和抽象類的異同點(diǎn)(引用抽象類與接口區(qū)別)

(1)對(duì)接口的使用方式是通過關(guān)鍵字implements來實(shí)現(xiàn)的,而對(duì)于抽象類的操作是使用類繼承的關(guān)鍵字exotends實(shí)現(xiàn)的

(2)接口沒有數(shù)據(jù)成員,但是抽象類有數(shù)據(jù)成員,抽象類可以實(shí)現(xiàn)數(shù)據(jù)的封裝。

(3)接口沒有構(gòu)造函數(shù),抽象類可以有構(gòu)造函數(shù)。

(4)接口中的方法都是public類型,而抽象類中的方法可以使用private、protected或public來修飾。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論