|
new,class,extends。這三個(gè),大家都懂得。
::,范圍解析操作符(也可稱作 Paamayim Nekudotayim)或者更簡(jiǎn)單地說是一對(duì)冒號(hào),可以用于訪問靜態(tài)成員、方法和常量。還可以用于覆蓋類中的成員和方法。
parent和self。parent指的就是派生類在 extends 聲明中所指的基類的名字。這樣做可以避免在多個(gè)地方使用基類的名字。
$this 偽變量。$this指向當(dāng)前的實(shí)例。$this卻不一定是方法所屬的對(duì)象。有時(shí)候類A內(nèi)的代碼會(huì)調(diào)用類B的一個(gè)靜態(tài)方法。參考例子:http://www.php.NET/manual/zh/language.oop5.basic.php
static關(guān)鍵字。如果聲明類成員或方法為static,就可以不實(shí)例化類而直接訪問。但是,除了靜態(tài)方法,不能通過一個(gè)對(duì)象來訪問其中的靜態(tài)成員。在靜態(tài)方法中,不使用$this。而使用self:: 。
final關(guān)鍵字。可以作用于類(class)和方法(function),會(huì)使類不能被繼承,方法不能被覆蓋。
屬性
可以初始化,但初始化的值必須是常數(shù)。常量前面用const個(gè)關(guān)鍵字,常量的值必須是一個(gè)定值,不能是變量,類屬性或其它操作(如函數(shù)調(diào)用)的結(jié)果。
構(gòu)造函數(shù)和析構(gòu)函數(shù)
這兩個(gè)函數(shù)都不會(huì)暗中調(diào)用基類的響應(yīng)函數(shù),這跟Java的構(gòu)造器機(jī)制不一樣。要達(dá)到這樣的效果,必須顯示執(zhí)行。析構(gòu)函數(shù)中不能拋出異常。
抽象類:聲明為抽象的類方法不能包含具體實(shí)現(xiàn),抽象類不能實(shí)例化。必須先被繼承,再實(shí)例化其子類。而且子類的訪問控制要和抽象類一樣,或者更加寬松。抽象類至少包含一個(gè)抽象方法的。
接口
使用接口(interface),你可以指定某個(gè)類必須實(shí)現(xiàn)哪些方法,但不需要定義這些方法的具體內(nèi)容。
定義的所有方法都必須是public,且方法為空
可以定義常量,但是沒有屬性
接口的實(shí)現(xiàn)(implements)必須實(shí)現(xiàn)所有方法,而且可以實(shí)現(xiàn)多個(gè)接口(注意,方法不能重名)。
接口可以被另外的接口繼承 (extends)
php技術(shù):PHP面向?qū)ο蟾拍?/a>,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。