4 類載入器與類的載入過程概述

2021-10-07 09:30:12 字數 817 閱讀 7858

負責從檔案系統或者網路中將class檔案載入到記憶體中,生成乙個大的class的物件例項。

只負責載入,是否可以執行由執行引擎決定。

載入的類資訊存放在一塊稱為方法區的空間中。除了類資訊之外,方法區中還會存放執行時常量池資訊。

現在有乙個類car,編譯之後儲存在本地硬碟的class檔案中。然後通過類載入器(classloader)載入到方法區中,就是記憶體中的car class例項。然後通過car class物件的getclassloader方法,可以獲取是誰載入的car這個類。然後可以通過呼叫car class的構造器方法建立多個car的例項。通過呼叫car例項的getclass方法還可以獲取到是哪個類被用來建立了這個car物件。

由class檔案 -->jvm --> 元資料模板,是通過類載入器完成的。

物理磁碟上的class檔案載入到記憶體中是通過二進位製流的方式。

有乙個helloloader類,它包含乙個main方法。現在要執行這個類方法,首先類載入器會判斷這個類有沒有被載入到記憶體中,如果沒有,則會進行載入;如果載入失敗,會丟擲異常。

在載入完成之後會進行鏈結、初始化過程,最終會呼叫helloloader的main方法。

更多jvm文章請參考我的jvm專欄:

類載入過程

類載入時機 1 new 靜態屬性,靜態方法呼叫 2 people.class 獲取class物件 3 載入子類時需提前載入父類 4 main函式所在的類需要載入 類載入器 也是一種類,可由其他類載入器載入 頂級父類載入器有c,c 寫成,不能由其他類載入器載入 載入類 雙親委派模型 從子類到父類依次查...

類載入過程

類從被載入到jvm中開始,到解除安裝為止,整個生命週期包括 載入 驗證 準備 解析 初始化 使用和解除安裝七個階段。其中類載入過程包括載入 驗證 準備 解析和初始化五個階段。鏈結階段要做的是將 載入到jvm 中的 二進位制位元組流 的類資料資訊 合併到jvm的執行時狀態中 經由驗證 準備和解析三個階...

類載入過程

類載入過程 public class ssclass public class superclass extends ssclass protected static int value 123 public superclass 類載入過程 載入 驗證 準備 解析 初始化 使用 解除安裝 載入 根...