php中類和對象:靜態屬性、靜態方法圖文詳解

來源:互聯網
上載者:User
這篇文章主要介紹了php中類和對象:靜態屬性、靜態方法,需要的朋友可以參考下

在PHP中,使用關鍵字 static 修飾成員屬性和成員方法被稱為靜態屬性和靜態方法。靜態屬性和靜態方法不需要在類被執行個體化的情況下可以直接使用。

靜態屬性

與普通的成員屬性不同,靜態屬性屬於類本身而不屬於類的任何執行個體。靜態屬性可以被看做是儲存在類當中的全域變數,可以在任何地方通過類來訪問它們。

由於靜態屬性不受任何具體對象的限制,所以不需要建立類執行個體,而可以直接引用類中的靜態屬性,使用文法格式如下:

類名稱::$靜態屬性名稱

其中,符號”::”被稱作範圍解析操作符,它可以用於訪問靜態成員、靜態方法和常量,還可以用於覆蓋類中的成員和方法。

如果想在同一類的成員方法中訪問靜態屬性,可以通過在該靜態屬性的名稱前加上操作符”self::”來實現。例子如下:


class DaBing{  static $bing=0;   //定義靜態屬性 bing  function addOne(){    self::$bing++;    //調用同一類中的靜態屬性 bing    echo"\$bing的值為:".self::$bing++;  }}$obj=new DaBing();$obj->addOne();


該程式使靜態屬性的值加1,執行結果為:1

靜態方法

在PHP中將成員方法聲明為靜態,就稱其為靜態方法。由於靜態方法不受任何具體對象的限制,所以不需要建立類執行個體就可以直接引用類中的方法。文法格式如下:

類名稱::靜態方法名稱([參數1,參數2,……])
與調用靜態屬性相同,在類中使用操作符”self::”來表示調用同一類中的靜態方法,例子如下:


class DaBing{  static function addOne($number){ //定義靜態方法 addOne()    echo"\$number+1=";    echo $number+1;  }  static function showResult($number){    echo"\$number=".$number;    echo"<br>";    self::addOne($number); //調用同一類中的靜態方法 addOne()  }}$number=100;DaBing::showResult($number);


該程式執行的結果為:

$number=100
$number+1=101


以上就是本文的全部內容,希望對大家的學習有所協助。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.