|
我把一些php中類的常識性整理出來,讓新手們更容易掌握php類,以便能快速看懂那些老大們寫的程序,呵呵,不過比較少,希望老大們補充一下或者修正其中錯誤理解。
Q:php中的類可以有構(gòu)造函數(shù)么?
A:可以,只要函數(shù)名和類名相同,這個函數(shù)將成為構(gòu)造函數(shù)。在使用 new 操作符來創(chuàng)建一個類的實例時,該構(gòu)造函數(shù)將會自動調(diào)用,因此,可以把一些初始化工作放在構(gòu)造函數(shù)里完成。
Q:php中的類有析構(gòu)函數(shù)么?
A:沒有。當(dāng)對象被銷毀,使用 unset() 或者簡單的脫離范圍,析構(gòu)函數(shù)都會自動調(diào)用。但 php 中沒有析構(gòu)函數(shù)。 如:
unset($foo);
就銷毀一個類對象$foo了。
Q:要如何繼承一個類?
A:使用關(guān)鍵字 extends 來繼承一個類,如:
class B extents A {
}
Q:在類的定義中如何引用自身?
A:使用 $this 來引用當(dāng)前類自身,如:
$this->name = "Tom";
Q:在子類中如何使用父類?
A:使用 :: 操作符,且有兩種方式,一種是直接用父類名,如:
A::example();
一種是用 parent 關(guān)鍵字,如:
parent::example();
建議采用 parent:: 來引用父類。
Q:我不想創(chuàng)建類的實例,能直接使用類中的函數(shù)或變量嗎?
A:可以,采用 :: 操作符,如:
B::example();
就可以執(zhí)行B類中的函數(shù)example(),而并沒有創(chuàng)建任何B類的對象,僅僅是作為一個類函數(shù)來調(diào)用,這對于功能模塊歸納組織很有好處。
Q:php有多重繼承么?//added by erquan
A:沒有。子類不能同時從兩個父類繼承,即一個孩子不能同時有兩個爸爸:)。子類必須依賴于一個且必須已存在的基類。
php技術(shù):[FAQ]PHP中的一些常識:類篇,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。