java 数字表示什么意思是什么,读取Java字节码指令:数字是什么意思?
生活随笔
收集整理的這篇文章主要介紹了
java 数字表示什么意思是什么,读取Java字节码指令:数字是什么意思?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java類文件和字節碼
Java類文件(字節碼文件)由不同的組件組成:
>幻數:0xCAFEBABE
>類文件格式的版本:類文件的次要版本和主要版本
>常量池:類的常量池
>(…)
>字段:類中的任何字段
>方法:類中的任何方法
>屬性:類的任何屬性(例如源文件的名稱等)
數字#5僅指恒定池中的位置.在該位置找到CONSTANT_FieldRef,其中包含對CONSTANT_NameAndType以及其他屬性的引用. CONSTANT_NameAndType包含對CONSTANT_Utf8的引用(包含實際的字符串/名稱.)
所以流程看起來像這樣:
getfield #number -> FieldRef -> NameAndType -> Utf8 -> string
因此,不是在每個getfield指令中保存整個字符串,而是保存一個數字.這提高了類文件中解釋器(或JIT)和空間的性能.
手寫字節碼
可以使用此工具將手寫字節碼組裝到類文件中(它包含大量示例):
總結
以上是生活随笔為你收集整理的java 数字表示什么意思是什么,读取Java字节码指令:数字是什么意思?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 骁龙845和710性能差距
- 下一篇: java socket 异常处理_Jav