java的static關鍵字是非常有用的.有兩種情況是non-static無法做到的,這時你就要使用statice。第一種:你希望不論產生了多少個對象,或不存在任何對象的情形下,那些特定數據的存儲空間都只有一份;第二種:你希望某個函數不要和class object綁在一起。即使沒有產生任何object,外界還是可以調用其static函數,或是取用其static data。如何理解呢,看完下面的小例子,就會理解了。
輸出結果為:47305050為什么會有這樣的結果呢?這是因為它們都指向同一塊內存。另外,調用static函數或變量,除了利用對象定址外(t1.i = 50),也可以直接使用其class名,即(StaticTest.i = 50)。