類載入過程和雙親委派機制的理解

2021-10-07 06:32:44 字數 378 閱讀 4926

類載入過程:(載入->驗證->準備->解析->初始化)

先在磁碟上讀入這個類檔案,呼叫這個類時,然後把這個類載入到記憶體中。然後驗證這個類是否是正確的,如果這個類有靜態變數就分配記憶體,解析這些類的靜態鏈結(比如main方法等)和動態鏈結(比如引用物件方法這些),然後給靜態變數初始化值。

雙親委派機制:

雙親委派機制是指當乙個類載入器收到乙個類載入請求時,該類載入器首先會把請求委派給父類(這個父類不是指繼承,是應用程式類往上找是擴充套件類,擴充套件類往上找是啟動類)載入器。每個類載入器都是如此,只有在父類載入器在自己的搜尋範圍內找不到指定類時,子類載入器才會嘗試自己去載入(比如應用程式類載入會先去擴充套件類載入,擴充套件類載入會去啟動類載入,如果啟動類裡面找不到,就去擴充套件類載入,擴充套件類找不到就去應用程式類載入)

類載入機制及雙親委派模型

虛擬機器把描述類的資料從class檔案載入到記憶體,並對資料進行校驗 轉換解析和初始化,最終形成可以被虛擬機器直接使用的j a型別 j a位元組碼 載入 連線 驗證 準備 解析 初始化 使用 解除安裝 有一篇部落格專門介紹過類的載入過程,這裡就不再詳細展開了,載入大致是通過類的全限定名獲取對應類的二...

類載入器及雙親委派機制

目錄類載入過程 3.初始化 類載入子系統中的initialization 類載入時機 類載入機制 引用資料 將類的class檔案讀入記憶體,並為建立乙個j a.lang.class物件。也就是說,當程式使用任何類時,系統都會為它新建乙個j a.lang.class物件。類的載入由類載入器完成,類載入...

談談類載入器的雙親委派機制

如果我們要載入乙個類,我們會先依據上圖的順序,一層一層去找是否已經有類載入器已經載入類資訊,最後才是我們的自己寫的類載入器,最大程度上防止資源的浪費 我們現在去看看classloader的原始碼 重點看看這段,簡單明瞭,他會先去看看classloader的parent extclassloader ...