news 2026/1/12 14:17:00

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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

)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/11 18:07:59

从入门到精通:AI Agent六大核心模块深度解析

AI Agent通过六大核心模块构成智能闭环:感知交互模块负责接收解析需求;任务规划模块拆解任务序列;记忆管理模块存储短期记忆和长期知识;工具调用模块连接外部资源;执行反馈模块监控过程和校验结果;自主优化…

作者头像 李华
网站建设 2026/1/12 14:30:54

Flutter 列表 rebuild 的真正边界在哪里

子玥酱 (掘金 / 知乎 / CSDN / 简书 同名) 大家好,我是 子玥酱,一名长期深耕在一线的前端程序媛 👩‍💻。曾就职于多家知名互联网大厂,目前在某国企负责前端软件研发相关工作,主要聚…

作者头像 李华
网站建设 2026/1/12 8:19:27

AI创业已变天!Manus首席科学家带你重新理解Agent与产品思维

本文基于Manus首席科学家季逸超的访谈,探讨了AI创业与Agent设计的核心原则。AI时代更像传统制造业,创业者需具备经营思维而非艺术情怀。产品设计应遵循"有所不为"的理念,解决好"最后一公里"问题。Agent设计不应模仿人类分…

作者头像 李华
网站建设 2026/1/13 2:19:58

java头歌-数组进阶

第一关 public static void main(String[] args) {//动态构建arr1int[] arr1 new int[3];Scanner sc new Scanner(System.in);for(int i 0 ; i< arr1.length ; i){arr1[i] sc.nextInt();}/********** Begin **********///创建数组arr2int[] arr2 new int[3];for (int i…

作者头像 李华
网站建设 2026/1/12 21:17:43

手写一个单例模式 (考虑线程安全)。

手写一个单例模式 (考虑线程安全) 关键词:单例模式, 线程安全, 设计模式, 双重检查锁定, 并发编程, 懒汉式, 饿汉式 摘要:单例模式是软件开发中最基础也最常用的设计模式之一,它保证一个类在整个系统中只有一个实例,并提供全局访问点。然而在多线程环境下,简单的单例实现可…

作者头像 李华
网站建设 2026/1/13 9:27:50

IDEA搭建SpringBoot,MyBatis,Mysql工程项目

目录 一、前言 二、项目结构 三、初始化项目 四、SpringBoot项目集成Mybatis编写接口 五、代码仓库 一、前言 构建一个基于Spring Boot框架的现代化Web应用程序&#xff0c;以满足[公司/组织名称]对于[业务需求描述]的需求。通过利用Spring Boot简化企业级应用开发的优势…

作者头像 李华