java static到底有什么用
http://www.tianya.cn/techforum/Content/414/4347.shtmljava的static關鍵字是非常有用的.
有兩種情況是non-static無法做到的,這時你就要使用statice。
第一種:你希望不論產生了多少個對象,或不存在任何對象的情形下,那些特定數據的存儲空間都只有一份;
第二種:你希望某個函數不要和class object綁在一起。即使沒有產生任何object,外界還是可以調用其static函數,或是取用其static data。
如何理解呢,看完下面的小例子,就會理解了。
public class StaticTest {
static int i = 47;
}
public class Test {
public static void main(String[] args) {
StaticTest t1 = new StaticTest();
StaticTest t2 = new StaticTest();
t1.i = 50;
System.out.println(t1.i);
System.out.println(t2.i);
}
}
結果為:
50
50
為什么會有這樣的結果呢?這是因為它們都指向同一塊內存。
另外,調用static函數或變量,除了利用對象定址外(t1.i = 50),也可以直接使用其class名,即(StaticTest.i = 50)。
posted on 2008-08-19 20:33 gdufo 閱讀(272) 評論(0) 編輯 收藏 所屬分類: JAVA 基礎