JVM學習筆記8 Class檔案結構

2021-07-10 05:49:22 字數 622 閱讀 9354

檔案結構魔數

版本常量池訪問符

類、超類、介面

字段方法

屬性

–constant_utf8    1  utf-8編碼的unicode字串

–constant_integer    3  int型別的字面值

–constant_float    4  float型別的字面值

–constant_long    5  long型別的字面值

–constant_double    6  double型別的字面值

–constant_class    7  對乙個類或介面的符號引用

–constant_string    8  string型別字面值的引用

–constant_fieldref    9  對乙個欄位的符號引用

–constant_methodref  10  對乙個類中方法的符號引用

–constant_inte***cemethodref  11  對乙個介面中方法的符號引用

–constant_nameandtype  12  對乙個欄位或方法的部分符號引用

JVM之Class檔案結構

但是乙個類或者介面不一定生成class檔案,classloader直接生成。各個資料項按照嚴格的順序排列在class檔案中,沒有任何分隔符,當遇到需要占用8位位元組以上的資料項時,則會按照高位在前 或低位在前 方式分割為若干個8位位元組儲存。big endian little endian。clas...

JVM載入class檔案的原理機制?

jvm中類的裝載是由類載入器 classloader 和它的子類來實現的,j a中的類載入器是乙個重要的j a執行時系統元件,它負責在執行時查詢和裝入類檔案中的類。由於j a的跨平台性,經過編譯的j a源程式並不是乙個可執行程式,而是乙個或多個類檔案。當j a程式需要使用某個類時,jvm會確保這個類...

jvm學習(筆記)

1 jvm規範 img 2 oracle jdk 編譯機制 img 1 詞法分析 將 轉token序列 例如token.eq name 語法分析 生成語法抽象樹。2 註解處理 處理註解生成 3 檢查語法抽象樹 3 類載入順序 classloader self parent system findcl...