jvm類載入總共有7個階段。載入->驗證->準備->解析->初始化->使用->解除安裝。主要需要了解的為準備階段,初始化階段。下面分別對此兩個階段進行解析。
初始化階段:
初始化分為主動引用和被動引用。主動引用包括:
(1)建立類的例項
(2)訪問類的靜態變數
(3)訪問類的靜態方法
(4)反射
(5)虛擬機器啟動時,定義了main方法那個類先初始化
(6)當初始化乙個類時,如果父類尚未初始化,則先將父類初始化。
被動引用:
(1)子類呼叫父類靜態變數,子類不會初始化,只有父類被初始化。
(2)對於陣列定義來引用類,不會觸發類的初始化。
(3)訪問類的常量,不會初始化類。
子類繼承父類,在呼叫的時候,初始化順序為,首先初始化父類的靜態**塊->子類的靜態**塊->父類非靜態**塊->父類建構函式->子類非靜態**塊->子類建構函式。
JVM 類載入機制
1 載入步驟 jvm 類載入機制分為五個部分 載入,驗證,準備,解析,初始化。2 類載入器 3 雙親委派 1 什麼是雙親委派?當乙個類收到了類載入請求,他首先把這個請求委派給父類去完成,每乙個層次類載入器都是如此,因此所有的載入請求都應該傳送到啟動類載入其中,只有當父類載入器反饋自己無法完成這個請求...
Jvm類載入機制
類載入的過程 類載入器 控制台列印輸出 主要分為以下三步 載入源包括很多種,如檔案 class檔案,jar檔案 網路 計算生成的乙個二進位製流 proxy 由其他檔案生成 jsp 等,資料庫 準備階段正式為類變數分配記憶體並設定變數的初始值。這些變數使用的記憶體都將在方法區中進行分配 這裡的初始值並...
JVM 類載入機制 類載入器
類宣告週期 檔案格式驗證 基於二進位製流,只有這一步是基於二進位製流,後續步驟都是基於方法區資料 1.魔數 cafe babe 開頭 2.主次版本是否在當前jvm支援範圍 3.常量池的常量是否不被支援 4.很多很多規範 元資料驗證 1.類是否有父類,object 2.匪類是否繼承了被final修飾的...