JAVA類初始化過程

2021-09-13 00:17:42 字數 840 閱讀 9377

輸入結果為

乙個類要建立例項需要先載入並初始化該類( main方法所在的類需要先載入和初始化 )

乙個子類要初始化需要先初始化父類

乙個類初始化就是執行()方法

()方法由靜態類變數顯示賦值**和靜態**塊組成

類變數顯示賦值**和靜態**塊**從上到下順序執行

()方法只執行一次

a,例項初始化就是執行()方法

()方法可能過載有多個,有幾個構造器就有幾個方法

()方法由非靜態例項變數顯示賦值**和非靜態**塊、對應構造器**組成

非靜態例項變數顯示賦值**和非靜態**塊**從上到下順序執行,而對應構造器的**最後執行

每次建立例項物件,呼叫對應構造器,執行的就是對應的方法

方法的首行是super()或super(實參列表),即對應父類的方法

哪些方法不可以被重寫

final方法

靜態方法

private等子類中不可見方法

物件的多型性

子類如果重寫了父類的方法,通過子類物件呼叫的一定是子類重寫過的**

非靜態方法預設的呼叫物件是this

this物件在構造器或者說方法中就是正在建立的物件

java類初始化過程

測試3個內容 類載入順序 子父類執行過程 物件初始化過程 從幾次試驗我們看到 當執行到類時,類被載入到記憶體,並初始化 靜態成員被載入到共享區 不用例項化物件就可以呼叫靜態資源 靜態成員變數,靜態成員方法,靜態 塊,只初始化一次 而普通變數,普通 塊,構造方法,在每次例項化物件時都要初始化 子類物件...

Java類的初始化過程

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

Java 初始化過程

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