static :無論是否創(chuàng)建對象與否,或者創(chuàng)建多個對象存崖,都有一份存儲空間静暂;可以不用new 對象就可以進行使用static修飾的變量或者方法。
EG:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Static Test");
StaticTest staticTest1 = new StaticTest();
System.out.println("test1 i: " + ++staticTest1.i);
//System.out.println("test1 i: " + ++StaticTest.i);
StaticTest staticTest2 = new StaticTest();
System.out.println("test2 i: "+staticTest2.i);
//System.out.println("test2 i: " + StaticTest.i);
}
}
class StaticTest{
static int i = 10;
}
結(jié)果:
Static Test
test1 i: 11
test2 i: 11
從上面的例子晦毙,看到:new了兩個對象生巡,但是i的值的打印結(jié)果說明了,時同一份i见妒,即static修飾變量只有一個存儲空間孤荣,無論你創(chuàng)建了多少個對象;注釋的那兩行可以替換new和system.out.那兩行须揣,即可以不用new對象而直接引用static變量盐股。