深入理解Java虚拟机 – 阅读class文件的三种姿势(连载2)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了深入理解Java虚拟机 – 阅读class文件的三种姿势(连载2),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1758字,纯文字阅读大概需要3分钟。
内容图文
对于熟悉Java程序语言的人来说,JVM(Java Virtual Machine)是实现语言无关性的基石,被JVM所识别的.class文件是实现平台无关性的基石。这一点的具体信息可参考
https://www.datapro.cool/2364.html
.class文件中包含了被虚拟机所识别的字节码指令,看懂字节码指令是迈向高级架构师的一小步(不积跬步无以至千里)。本文将介绍几种如何查看class文件字节码指令的方法。
.class文件中存的是被JVM识别的16进制数,这些16进制数与字节码指令的关系如下(附Java虚拟机规范官方文档)
.class中的每一个16进制数都在Java虚拟机规范中能找到对应的字节码指令信息。
附Java虚拟机规范官方文档:https://docs.oracle.com/javase/specs/
Notepad++(HEX-Editor插件)法
首先官网下载Notepad++: https://notepad-plus.en.softonic.com/
【添加notepad++到鼠标右键快捷菜单方法】:
直接打开class文件是这样的(乱码)
依次点击 Plugins — Plugins Admin…
搜索 HEX-Editor, 勾选并安装插件
插件安装完毕后,界面顶部右侧会出现 H 标志,表明安装成功,此时点击H 即可以16进制的方式转换.class文件
IDE(idea、eclipse)插件法(墙裂推荐)
对于集成在开发环境中的插件来说更容易的阅读字节码,并且扩展内容更丰富
IntelliJ IDEA (jclasslib)
首先安装插件jclasslib
安装完毕后,任意打开一个.java文件,然后依次点击 View — Show Bytecode With Jclasslib
找到如下位置,即可看到当前java文件的字节码指令(如同javap反编译一样)
Eclipse( JBC)
打开eclipse 依次点击Help — Eclipse Marketplace…, 出现如下弹框,搜索JBC:
安装完成后重启Eclipse,找到任以java文件,右击以 Open JBC方式打开
打开后即可看到对应java文件的字节码指令信息
Binary Viewer
这是一款查看二进制的软件工具,对于自身是16进制的也会识别,并且文件的信息量比Notepad++打开的class文件信息量更丰富
官网下载地址:https://binary-viewer.en.softonic.com/
以上就是三种常见查看字节码指令的方法,平时最常用的是结合IED一起使用的方法
更多精彩内容请关注公众号 数据与编程之美
内容总结
以上是互联网集市为您收集整理的深入理解Java虚拟机 – 阅读class文件的三种姿势(连载2)全部内容,希望文章能够帮你解决深入理解Java虚拟机 – 阅读class文件的三种姿势(连载2)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。