講完了自動記憶體管理,我們來談談執行子系統。執行子系統講解的是JVM如何執行程式。
Class檔案概述
這篇我們只講講Class檔案。 Class檔案又稱為類別檔案或字節碼檔案。 javac將.java檔(原始碼)編譯成.class檔(字節碼),jvm再將.class檔解釋成機器碼。
Class檔案中包含的是Java虛擬機器指令集和符號表以及若干其它輔助資訊。其是一組以8位元組為基礎單元的二進位流,沒有空隙存在。
其儲存資料的結構有兩種:無符號數和表格。
(1)無符號數是用來描述數字,索引引用,數量值或依照UTF-8編碼構成字串值。屬於基本的資料類型,以u1,u2,u4,u8分別代表1個字節,2個字節,4個字節,8個位元組
(2)表是由多個無符號數或其它表作為資料項構成的複合資料類型,以“_info”結尾。
其特點是:在Class檔案中,哪個位元組代表什麼意義,長度是多少,先後順序如何,都不允許改變。
Class檔案組成部分
對於Class的組成,在上圖已經羅列的很清楚了。也需再對常數池進行一下強調:當虛擬機器運作時,需要從常數池取得對應的符號引用,再在類別建立時或執行時解析、翻譯到特定的記憶體位址之中。
以上便是為大家整理的關於JAVA虛擬機器中class檔案部分,更多相關問題請訪問PHP中文網:JAVA影片教學
#以上是JAVA虛擬機器(JVM)詳細介紹(四)-類別文件結構的詳細內容。更多資訊請關注PHP中文網其他相關文章!