關於PHP中Object對象的筆記分享

來源:互聯網
上載者:User

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找不到定義的類名。可以在這個函數中定義如何自動載入。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.