讀懂 Java 字節(jié)碼(3)

java-logo.jpg
byte_code_01.JPG

繼續(xù)向下讀取字節(jié)碼

07 00 16

查表 07 類型為 CONSTANT_class_info 值為兩個字節(jié)引用
指向全限定名常量項的索引 00 16 轉(zhuǎn)為 22 所以索引值為 22

 #22 = Utf8               com/zidea/test/Demo


07 00 17

07 表示和上一個常量是一樣的類型 CONSTANT_class_info 引用值 23 指向

 #23 = Utf8               java/lang/Object


01 00 01 61
  • 01 表示 CONSTANT_utf8_info ,00 01 表示 utf8 編碼的字符串長度
  • 61 為字符 a
 #5 = Utf8               a


01 00 01 49
 #6 = Utf8               I

01 00 06 3C 69 6E 69 74 3E

這里讀取這段字節(jié)碼,首先 01 表示 CONSTANT_utf8_info 類型,00 06表示長度,然后向后取 6 個字節(jié) 3C 69 6E 69 74 3E為字符 <init>

01 00 03 28 29 30 56
 #8 = Utf8               ()V

01 00 0F 4C 69 6E 65 4E 75 6D 62 65 72 54 61 62 6C 65

01 表示 CONSTANT_utf8_info , 00 0F 表示 15 向后數(shù) 15 字符 4C 69 6E 65 4E 75 6D 62 65 72 54 61 62 6C 65 為 LineNumberTable

 #10 = Utf8               LineNumberTable
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容