Java进阶——如何查看Java字节码

前言

深入学习Java语言,也免不了要去研究JVM类加载、JVM字节码相关的东西,这时就需要经常查看字节码。

方法
1.使用命令行

命令行有两种方式

  • java -c

    在编译后,进入字节码存放的文件夹,例如:FileAHello.class,使用命令行窗口,执行命令:
    java -c FileAHello.class,即可在窗口浏览字节码文件

  • javap -verbose HellloWorld.class
    javap -verbose Hello.class ,同样可以浏览字节码文件

2.外接工具的方式

上面的描述编译成Hello.class文件(或者找到ide中相关out文件夹中的那些.class文件),然后下载Java Bytecode Editor,解压,直接运行jbe.sh即可看到UI面板,打开Hello.class文件即可看到类似下图的目录,将能看到非常丰富的类信息。

3.使用AndroidStudio 内置插件

在AndroidStudio 面板, AndroidStudio -> Preferences ->

Plugins ->jclasslib Bytecode Viewer -> Browse repositories -> install -restore AndroidStudio,重启AndroidStudio后,在选中要查看的.java文件, View -> Show bytecode with jclasslib,此时在ide的右边就会看到类似下图的界面,非常丰富的类信息

以上就是三种查看字节码的方法

参考:


https://blog.csdn.net/kwame211

)

相关推荐
We་ct2 小时前
深度剖析浏览器跨域问题
开发语言·前端·浏览器·跨域·cors·同源·浏览器跨域
身如柳絮随风扬3 小时前
多数据源切换实战:从业务场景到3种实现方案全解析
java·分布式·微服务
skywalk81633 小时前
在考虑双轨制,即在中文语法的基础上,加上数学公式的支持,这样像很多计算将更加简单方便,就像现在的小学数学课本里面一样,比如:定x=2*x + 1
开发语言
小书房3 小时前
Kotlin的by
android·开发语言·kotlin·委托·by
就叫飞六吧3 小时前
QT写一个桌面程序exe并动态打包基本流程(c++)
开发语言·c++
threelab3 小时前
Three.js 代码云效果 | 三维可视化 / AI 提示词
开发语言·javascript·人工智能
Java小生不才3 小时前
Spring AI文生音
java·人工智能·spring
凯尔萨厮3 小时前
Springboot2.x+Thymeleaf项目创建
java
V搜xhliang02463 小时前
OpenClaw科研全场景用法:从文献到实验室的完整自动化方案
运维·开发语言·人工智能·python·算法·microsoft·自动化