public class demo1 { /** * @param args */ public static void main(String[] args) { demo2 aDemo1=new demo2(); demo2 aDemo2=new demo2(); aDemo1.b++; System.out.PRint(aDemo1.b++); System.out.print(aDemo2.b); }}public class demo2 { static int b=12;}當demo2有static的時候輸出1314,當demo2沒有static的是會輸出1312
有static的時候,因為它們引用的是同樣的內存區域。所以即使聲明了兩個不同的對象,對象.b++,對象可以看做是一個對象,所以最好用類名.b,這樣可以不用實例化對象,節省內存,demo2.b,沒有static,就相當于生成了兩個對象,兩個對象分別有不同的b,所以b的值不同,靜態方法,可以用類名.方法名,好處是不用實例化對象,節省內存。
新聞熱點
疑難解答