搜尋
首頁Javajava教程Java中JVM的字節碼結構是什麼?

1、魔數

所有.class檔案的前四個位元組都是魔數,魔數的固定值為0xCAFEBABE。魔數放在檔案的開頭,JVM可以根據檔案的開頭判斷這個檔案是否有可能是.class檔案。如果是這樣的話,之後的操作會繼續下去。

2、版本號

版本號為魔數後的4個字節,前2個位元組顯示下一個版本號,後2個位元組顯示主版本號。

主版本號後面的位元組是常數池入口。在常量池中保存兩種常數:字面量和符號引用。字面量在程式碼中宣告為Final的常數值,符號引用類別和介面的全域限定名、欄位的名稱和說明符、方法的名稱和說明符。常量池整體分為常量池計數器和常量池資料區兩部分。

3、常數池

常數池結束後的兩個位元組,描述了這個Class是類別還是介面,以及是否用Public、Abstract、Final等裝飾符裝飾。

4、存取標誌

常數池結束之後的兩個位元組,描述該Class是類別還是接口,以及是否被Public、Abstract、Final等修飾符修飾。

5、目前類別名稱

存取標誌後的兩個字節,描述的是目前類別的全限定名。這兩個位元組保存的值為常數池中的索引值,根據索引值就能在常數池中找到這個類別的全限定名稱。

6、父類別名稱

目前類別名稱後的兩個字節,描述父類別的全限定名,同上,保存的也是常數池中的索引值。

7、介面資訊

父類別名稱後為兩個位元組的介面計數器,描述了該類別或父類別實作的介面數量。緊接著的n個位元組是所有介面名稱的字串常數的索引值。

8、欄位表

欄位表用於描述類別和介面中聲明的變量,包含類別層級的變數以及實例變量,但不包含方法內部聲明的局部變數。

java基本資料型別有哪些

Java的基本資料型別分為:

1、整數型,用來表示整數的資料型別。

2、浮點型,用來表示小數的資料型別。

3、字元類型,字元類型的關鍵字是「char」。

4、布林類型,是表示邏輯值的基本資料型別。

以上是Java中JVM的字節碼結構是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具