1. 程式人生 > >靜態類和非靜態類

靜態類和非靜態類

com 變量 保存 結束 賦值 .cn 實例化 數據 空間

上次在http://www.cnblogs.com/hanshuai0921/p/7059237.html說到靜態函數和變量是保存到內存中,所以不用實例化,直接用類名::就可以調用,知道程序結束才會釋放內存.

在編譯的時候給靜態類變量函數賦值和內存空間,動態類是在編譯完,程序調用時才分配內存和數據的.

所以,靜態類在編譯的時候需要多做工作,動態類在執行的時候需要多做工作,然而php是動態語言,每一次這兩步都不掉,所以對於只運行一次的類,無所謂誰快誰慢。

但是如果一個類在程序當中要多次調用就不一樣了,靜態類是編譯的時候就賦值了,程序之後的運行都可以直接調用過來,而不用動態的分配內存了,就節約了時間,這就是為什麽靜態類比動態類快的原因(前提是被多次調用)

靜態類和非靜態類