類載入器可以分為引導類載入器,擴充套件類載入器,系統類載入器;有些地方又可以這樣分:啟動類載入器,自定義載入器。
定義了靜態成員變數,但是在準備階段,這裡只是預設給a = 0;的預設操作,到了初始化階段才進行 static{}**塊和靜態成員變數的賦值操作,即初始化之後,a = 8。
static
public static int a = 89;
該過程是這樣執行的:
準備階段,進行靜態成員變數a 的預設賦值0,所以靜態**塊中是可以對前面沒有定義a 進行賦值操作的。然後進行初始化操作,順序執行,最後 a=89;
今天暫且寫到這,以上內容有很多都是看其他大牛的。有錯誤的請指正。
java類載入機制
載入類時,每個類載入器總是首先將家在任務交給父類載入器,若父類載入器載入不到,自己才去載入 bootstrap loader時最頂級的載入器,其父載入器為null test test new test 11j class testclass test.getclass classloader cla...
Java類載入機制
解析階段是虛擬機器將常量池內的符號引用替換為直接引用的過程。符號引用 symbolic reference 符號引用以一組符號來描述所引用的目標,符號引用可以是任何形式的字面量,符號引用與虛擬機器實現的記憶體布局無關,引用的目標並不一定已經在記憶體中。直接引用 direct reference 直接...
Java類載入機制
在虛擬機器的生命週期中乙個類只被載入一次。類載入的原則 延遲載入,能少載入就少載入,因為虛擬機器的空間是有限的。類載入的時機 1 第一次建立物件要載入類.2 呼叫靜態方法時要載入類,訪問靜態屬性時會載入類。3 載入子類時必定會先載入父類。4 建立物件引用不載入類.5 子類呼叫父類的靜態方法時 1 當...