java類初始化過程

2021-09-01 01:41:53 字數 648 閱讀 6423

/*

測試3個內容:

類載入順序

子父類執行過程

物件初始化過程

從幾次試驗我們看到

當執行到類時,類被載入到記憶體,並初始化

靜態成員被載入到共享區

不用例項化物件就可以呼叫靜態資源

靜態成員變數,靜態成員方法,靜態**塊,只初始化一次

而普通變數,普通**塊,構造方法,在每次例項化物件時都要初始化

子類物件要初始化時,

會先初始化父類靜態成員和靜態**塊,

再初始化子類靜態成員和靜態**塊,

然後是父類普通**塊,父類構造方法

然後是子類普通**塊,子類建構函式

當子類名直接呼叫繼承自父類的靜態成員時,子類不會初始化,而只初始化父類(因為這已經足夠了)

補充:子類的所有構造方法中,如果未指定父類構造方法,則第一條語句是隱式的super(),即父類的空引數構造方法*/

class fu //父類

static

}class zi extends fu //子類

public zi()

static }

class demo

}

執行結果情況太多就不貼了

JAVA類初始化過程

輸入結果為 乙個類要建立例項需要先載入並初始化該類 main方法所在的類需要先載入和初始化 乙個子類要初始化需要先初始化父類 乙個類初始化就是執行 方法 方法由靜態類變數顯示賦值 和靜態 塊組成 類變數顯示賦值 和靜態 塊 從上到下順序執行 方法只執行一次 a,例項初始化就是執行 方法 方法可能過載...

Java類的初始化過程

1.首先,初始化父類中的靜態成員變數和靜態 塊 jvm載入類時執行,僅執行一次 按照在程式中出現的順序初始化 2.然後,初始化子類中的靜態成員變數和靜態 塊 jvm載入類時執行,僅執行一次 按照在程式中出現的順序初始化 3.其次,初始化父類中的普通成員變數和 塊 每一次建立物件時建立 再執行父類的構...

Java 初始化過程

初始化過程 載入器啟動並且找出匯出類derived的編譯 即名為derived.class的檔案之中 在對它載入的過程中,編譯器注意到它有乙個基類,於是繼續進行基類的載入 基類中的static變數初始化,然後是匯出類的static 如果乙個成員被宣告為 static,它就能夠在它的類的任何物件建立之...