博客
关于我
JVM 学习笔记十九、javap命令的使用
阅读量:613 次
发布时间:2019-03-12

本文共 876 字,大约阅读时间需要 2 分钟。

十九、javap命令的使用

1、javap 的参数

通过反编译生成的字节码文件,我们可以深入了解java代码的工作机制。分析类文件结构可能太过复杂,除了使用第三方工具jclasslib外,oracle官方提供了javap工具。

javap是JDK自带的反解析工具,其主要作用是根据class字节码文件反解析出类对应的代码区、局部变量表、异常表等信息。

通过局部变量表,可以查看局部变量的作用域范围、槽位信息以及槽位复用等细节。

2、javap 的用法

javap常用的选项包括 -l、-c、-v等。

  • javap -l 输出行号和本地变量表信息。

  • javap -c 反编译生成汇编代码。

  • javap -v 显示详细信息,包括行号、局部变量表和常量池内容。

以下示例展示了javap命令的使用场景。

① javap -public JavapTest.class 显示公共信息。

② javap -protected JavapTest.class 显示受保护信息和公共类成员。

③ javap -p (或-private) JavapTest.class 显示所有类和成员(大于private的).

④ javap -package JavapTest.class 显示程序包、受保护信息和公共类成员(默认).

⑤ javap -sysinfo JavapTest.class 显示系统信息,如类路径、大小、日期等。

⑥ javap -constants JavapTest.class 显示常量值,例如COUNTS的值。

字节码细节相关

  • -s 输出内部类型签名。
  • -l 输出行号和本地变量表。
  • -c 属于反汇编。
  • -v 输出详细信息,包含行号、本地变量表和反汇编内容。

组合使用这些选项可获取更全面的信息,例如使用java -v -p JavapTest.class

小结

javap命令可以反解析Java类文件,查看版本号、常量池、访问标识、变量表和代码行号等信息。通过分析字节码,可以理解Java代码的工作机制,涉及堆、栈和常量池等内存结构的操作。

转载地址:http://fpwaz.baihongyu.com/

你可能感兴趣的文章
nyoj------203三国志
查看>>
NYOJ-525 一道水题
查看>>
nyoj58 最少步数
查看>>
N皇后问题
查看>>
OAuth 2.0 MAC Tokens
查看>>
OAuth 及 移动端鉴权调研
查看>>
OAuth2 + Gateway统一认证一步步实现(公司项目能直接使用),密码模式&授权码模式
查看>>
OAuth2 Provider 项目常见问题解决方案
查看>>
OAuth2 vs JWT,到底怎么选?
查看>>
Vue.js 学习总结(14)—— Vue3 为什么推荐使用 ref 而不是 reactive
查看>>
oauth2-shiro 添加 redis 实现版本
查看>>
OAuth2.0_JWT令牌-生成令牌和校验令牌_Spring Security OAuth2.0认证授权---springcloud工作笔记148
查看>>
OAuth2.0_JWT令牌介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记147
查看>>
OAuth2.0_介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记137
查看>>
OAuth2.0_完善环境配置_把资源微服务客户端信息_授权码存入到数据库_Spring Security OAuth2.0认证授权---springcloud工作笔记149
查看>>
OAuth2.0_授权服务配置_Spring Security OAuth2.0认证授权---springcloud工作笔记140
查看>>
OAuth2.0_授权服务配置_三项内容_Spring Security OAuth2.0认证授权---springcloud工作笔记141
查看>>
OAuth2.0_授权服务配置_令牌服务和令牌端点配置_Spring Security OAuth2.0认证授权---springcloud工作笔记143
查看>>
OAuth2.0_授权服务配置_客户端详情配置_Spring Security OAuth2.0认证授权---springcloud工作笔记142
查看>>
OAuth2.0_授权服务配置_密码模式及其他模式_Spring Security OAuth2.0认证授权---springcloud工作笔记145
查看>>