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