首頁  >  文章  >  Java  >  JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構

JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構

王林
王林轉載
2019-08-24 14:38:133701瀏覽

講完了自動記憶體管理,我們來談談執行子系統。執行子系統講解的是JVM如何執行程式。

JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構

Class檔案概述

這篇我們只講講Class檔案。 Class檔案又稱為類別檔案或字節碼檔案。 javac將.java檔(原始碼)編譯成.class檔(字節碼),jvm再將.class檔解釋成機器碼。

JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構

Class檔案中包含的是Java虛擬機器指令集和符號表以及若干其它輔助資訊。其是一組以8位元組為基礎單元的二進位流,沒有空隙存在。

JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構

其儲存資料的結構有兩種:無符號數和表格。

(1)無符號數是用來描述數字,索引引用,數量值或依照UTF-8編碼構成字串值。屬於基本的資料類型,以u1,u2,u4,u8分別代表1個字節,2個字節,4個字節,8個位元組

(2)表是由多個無符號數或其它表作為資料項構成的複合資料類型,以“_info”結尾。

其特點是:在Class檔案中,哪個位元組代表什麼意義,長度是多少,先後順序如何,都不允許改變。

Class檔案組成部分

JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構對於Class的組成,在上圖已經羅列的很清楚了。也需再對常數池進行一下強調:當虛擬機器運作時,需要從常數池取得對應的符號引用,再在類別建立時或執行時解析、翻譯到特定的記憶體位址之中。

以上便是為大家整理的關於JAVA虛擬機器中class檔案部分,更多相關問題請訪問PHP中文網:JAVA影片教學

#

以上是JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除