1.當將所有實例設為null,php會自動清除對象的引用。
2.建構子:__construct()
清除對象時自動執行的方法:__destruct()
也可以設置手動清除對象的方法:destroy或者clean_up
3.對象中的三種變量范圍:public、private和protected。
4.對象中的常量屬性可以使用const關鍵字,然後在對象外部以“對象名::屬性名”的格式引用,在對象內部以“self::屬性名”的格式引用。
5.在整個對象所有實例中通用的屬性,就是靜態屬性,使用static關鍵字。
static與const的區別在於,const前只能使用public關鍵字,而static可以使用其他關鍵字。此外,static屬性並非只讀。
6.在整個對象所有實例中通用的方法,就是靜態方法,也使用static關鍵字。
7.可以定義一個抽象類,用來定義界面。這種類只能被繼承,而不能創造實例。在類內部,用abstract定義子類必須提供的方法。
凡是有abstract方法的類,必須在類名前使用abstract關鍵字。
abstract class Producr
8.在方法前加final關鍵字,可以防止子類override這個方法。
類名之前也可以加final關鍵字,這樣就表明其他類不能繼承它。
9.界面interface用來定義一系列抽象類的結構。
interface IProduct
{
... ...
}
abstract class Product implements Iproduct
{
......
}
10.
== 比較兩個對象是否為同樣類型,以及是否有同樣的值。
=== 比較兩個對象是否為同一個類的實例。
11.類的克隆:完全復制值。
$a = new SomeClass();
$b = clone $a;
可以定義一個__clone()函數,專門對克隆行為進行定制。
12.可以定義一個類的__toString()方法,對使用print和echo函數的行為進行定制。
13.get_class()函數:返回一個對象的類名。
14.可以在一個函數的參數前加類名,表示TypeHint。
15.可以定義一個__autoload()函數,它的參數就是php找不到定義的類名。可以在這個函數中定義如何自動加載。