php抽象類和介面知識點整理總結

2022-09-26 05:00:12 字數 2415 閱讀 4225

抽象類(一種抽象的類)

一、什麼是抽象方法?

定義:乙個方法如果沒有方法體(乙個方法,不使用{},直接使用分號結束的方法,才是沒有方法體的方法),則這個方法就是抽象方法。

class person,

};}總結 1.宣告乙個方法不使用{},而直接分號結束。2.如果是抽象方法,必須使用abstract(抽象 關鍵字來修飾)。

二、什麼是抽象類呢?

1.如果乙個類中有乙個方法是抽象的方法,這個類就是抽象類。

2.如果宣告乙個抽象類,則這個類必須要使用abstract 關鍵字來修飾。

abstract class person

注意1.只要使用abstract 來修飾的類,就是抽象類。

2.抽象類是乙個特殊的類,特殊在**(在抽象類中可以有抽象方法)。

3.除了在抽象類中可以有抽象方法以外,和正常的類完全一樣。

注意21. 抽象類不能例項化物件(不能建立出物件)。

$p=new person(); //報錯

2. 如果看見抽象類,就必須寫這個類的子類,將抽象類中的抽象方法覆蓋(加上方法體)。

class student extend person()

}3. 子類必須全部實現(覆蓋重寫)抽象方法,這個子類才能建立物件,如果實現部分,那麼還有抽象方法,他還是抽象類。

class student extend person()

}抽象方法作用

1. 抽象方法就是乙個規定,規定子類必須有這個方法的實現,功能交給子類實現。

只寫出來結構,沒有實現,實現交給具體的子類(按自己功能實現)。

class student extend person()

// 覆蓋了父類兩個抽象方法

function eat()

}抽象類作用

就是要求子類的結構,所以抽象類就是乙個規範。(只有形)

介面 (介面是一種特殊抽象類,介面也是一種特殊的類 )

介面和抽象類的相同點

1.抽象類和介面都有抽象方法。

2.抽象類和介面不能建立例項物件。

3.抽象類和介面使用意義相同。定義一種規範。

不同點1.介面中的方法必須全要是抽象方法(不能用不抽象的方法),所以在介面的所有方法中不使用abstract,直接使用 分號結束。

2.介面中的成員屬性,必須是常量(不能有變數)。

3.介面所有許可權必須是公有的 public

4.宣告接icdhlr口 不使用class 使用 inte***ce ,

inte***ce person

$re=new person; //報錯 不可以 建立例項化 物件 。

echo person:: name; 輸出常量。

介面應用的一些細節

1. 可以使用 extends,讓乙個介面繼承另乙個介面(介面和介面的關係---只有擴充套件抽象方法,沒有覆蓋關係)。

2. 可以使用乙個類,來實現介面中的全部方法,也可也使用乙個抽象類,來實現介面的部分方法。(類與介面  或者 抽象類 與介面,有覆蓋的關係,---重寫---實現介面中的抽象方法)

inte***ce demo

inte***ce test extends demo

3.只要在子類中有覆蓋的動作,就不要使用extends(繼承 擴充套件)這個關鍵字,使用implements 實現。

inte***ce demo

inte***ce test extends demo

class hello extends test{} // 報錯 // 類對介面 有覆蓋

abstract class hello implements test //不報錯

4.乙個類可以在繼承另乙個類的同時,使用implements 實現介面(可以實現多個介面)(一定要先繼承,在實現介面)。

inte***ce demo

inte***ce test extends demo

class word

} class hello extends word implements test

function test1()

//實現介面

function test2()

//function test5()

}5.實現多個介面,只需使用逗號分開即可。

php 中乙個類 只要乙個父類 。

inteicdhlr***ce demo

inte***ce test extends demo

cla程式設計客棧ss world

inte***ce abc

}class hello extends world implements test,abc;

function test2();

function test3();

function test6();

}$re=new hello;

$re->test2(); //輸出 11

php抽象類和介面

介面 使用介面,你可以指定某個類必須實現那些方法,但是不需要定義這些方法的具體內容,我們可以通過inte ce來定義乙個介面,就像定義標準類一樣,但其中定義所有的方法都是空的,介面中定義的所有的方法都必須是public 實現乙個介面,可以使用implement操作符,類中必須實現介面中定義的所用的方...

php 介面和抽象類

php 介面和抽象類 介面 inte ce 在介面內定義方法,可不提供具體的 實現 作用 提供乙個規範,如果我們知道乙個類實現了某個介面,那麼就知道了可以呼叫該介面的那些方法,我們只需要知道這些就夠了。當有很多人一起開發乙個專案時,可能都會去呼叫別人寫的一些類,我怎麼知道他的某個功能的實現方法是怎麼...

Java知識點 6 抽象類和介面

抽象和介面是支援抽象方法的兩種機制,也是平時使用最頻繁的內容,在架構設計方面也有很多涉及。通過本文進行一下知識點的整理。如果有不準確的地方,還請指正。1.抽象 1.1 首先明確什麼是抽象方法,只有宣告,沒有具體方法體的方法我們稱之為抽象方法,使用abstract進行修飾 1.2 含有抽象方法的類,我...