java類的初始化

2021-08-25 18:42:00 字數 391 閱讀 9284

public class finaltest

public static int aa()

static

}下面是乙個測試類:

public class test

}輸出結果 0

當我們將 public static final int a=0; 改為:

public static int a=0;

輸出結果為:p0

可以看出static final型別的變數被編譯成常量表示式。所以在呼叫final static變數的時候不會將類初始化。

bug :

上述的描述有問題,就是說只有在final static 變數可以採用編譯時常量的話,上述的分析是正確的,如果不可以的話,那麼任然會呼叫static方法的

java 類的初始化

載入順序 啟動類的static block最先載入 父類靜態成員 靜態 塊 子類靜態成員 靜態 塊 父類例項成員 塊 父類建構函式 子類例項成員 塊 子類建構函式 class singleton public static singleton getinstence public class tes...

Java 類的初始化

public class person person p new person 1 將 person.class 檔案載入到記憶體 2 在棧記憶體之中為 p 開闢空間 3 在堆記憶體中為 person 物件開闢空間 4 對 person 物件的成員變數進行預設初始化 name null,age 0 ...

Java類初始化2

public class test2 class t t int a 5 static int b 7 class g g 輸出 main starts g starts t starts說明 1 從main進入 輸出 main starts 定義變數t t new t 2 載入類t,初始化類t中的...