首頁  >  文章  >  後端開發  >  static關鍵字全知

static關鍵字全知

小云云
小云云原創
2018-03-08 09:12:281735瀏覽


static關鍵字就是靜態或全域的意思,可以用來修飾類別、方法和變數。通常我們會聽到類別成員或靜態變數(就是載入後不會再變化)。當靜態成員載入後就不會再變化,如:String字串,一旦被初始化值就不會再改變。一般在開發中,我們將共有成員用static修飾。

1、 最常見的就是:用來修飾成員變數(將其變成類別的成員),e.g.:程式狀態和異常訊息。 (這兩個一般是用static和final共同修飾,這在開發中很常見)。

2、 用來修飾成員方法,將其變成類別方法,就可以使用「型別.方法名」調用,常用於工具類別。 (就是不需要建立物件)

3、 靜態程式碼區塊,就多個物件放在一起初始化(靜態程式碼區塊被執行的較早,只在靜態變數之後)

靜態變數

接下來我們說靜態變數(被static修飾)和實例變數(沒有被靜態變數修飾)的不同:

1、 靜態變數:在記憶體中只是一個拷貝,只被初始化一次,只分配一次內存,用類型可以直接訪問,也可以透過創建物件來訪問。

2、 實例變數:被呼叫需要創建對象,沒創建一次就要分配一次內存,在內存中可以有多個考培,但相互不影響。

靜態方法

靜態方法可以直接透過類別名稱來調用,實例也可以直接調用。因此靜態方法中不能存在super和this關鍵字(如果有不是跟耍流氓一樣嗎?實例變數和特定物件關聯)。

 相關推薦:

static關鍵字在PHP中的使用詳解

new self()和new static()有什麼區別

php中static與self兩者之間的差異詳解

#

以上是static關鍵字全知的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn