運行效果:
控制台效果:
==================================================
代碼部分
==================================================
/hello_test/src/com/b510/test/StaticTest.java
1 /** 2 * 3 */ 4 package com.b510.test; 5 6 /** 7 * 在程序運行時的區別:實例變量屬於某個對象的屬性,必須創建了實例對象,<br> 8 * 其中的實例變量才會被分配空間,才能使用這個實例變量。靜態變量不屬於某<br> 9 * 個實例對象,而是屬於類,所以也稱為類變量,只要程序加載了類的字節碼,<br> 10 * 不用創建任何實例對象,靜態變量就會被分配空間,靜態變量就可以被使用了。<br> 11 * 總之,實例變量必須創建對象后才可以通過這個對象來使用,靜態變量則可以<br> 12 * 直接使用類名來引用。例如,對於下面的程序,無論創建多少個實例對象,<br> 13 * 永遠都只分配了一個<code>staticInt</code>變量,並且每創建一個實例對象,<br> 14 * 這個<code>staticInt</code>就會加1;但是,每創建一個實例對象,就會分配一個<code>random</code>,<br> 15 * 即可能分配多個<code>random</code>,並且每個<code>random</code>的值都只自加了1次。<br> 16 * 17 * @author <a href="mailto:hongtenzone@foxmail.com">hongten</a> 18 * @date 2013-3-2 19 */ 20 public class StaticTest { 21 22 private static int staticInt = 2; 23 private int random = 2; 24 25 public StaticTest() { 26 staticInt++; 27 random++; 28 System.out.println("staticInt = "+staticInt+" random = "+random); 29 } 30 31 public static void main(String[] args) { 32 StaticTest test = new StaticTest(); 33 StaticTest test2 = new StaticTest(); 34 } 35 }