/** * 靜態變量與實例變量的區別 * <p> * 靜態變量: 靜態變量不屬於某個實例對象,而是屬於類,所以也稱爲類變量,只要程序加載了類的字節碼, * 不用創建任何實例對象,靜態變量就會被分配空間,靜態變量就可以被使用了 * <p> * 實例變量:實例變量屬於某個對象的屬性,必須創建了實例對象, * 其中的實例變量纔會被分配空間,才能使用這個實例變量 * <p> * 結論:實例變量必須創建對象後纔可以通過這個對象來使用,靜態變量則可以直接使用類名來引用。 */ public class test1 { public static int staticTest1 = 0;//靜態變量 public int test1 = 0;//實例變量: public test1() { staticTest1++; test1++; System.out.println("staticTest1=" + staticTest1 + ",test1=" + test1); } public static void main(String[] args) { test1 a = new test1(); test1 b = new test1(); //結果:staticTest1=1,test1=1 // staticTest1=2,test1=1 //無論創建多少個實例對象,永遠都只分配了一個staticTest1變量,並且每創建一個實例對象,這個staticTest1就會加 // 每創建一個實例對象,就會分配一個test1,即可能分配多個test1,並且每個test1的值都只自加了1次 } }
靜態變量與實例變量的區別
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.