Java常用命令之javap

javap

作用:反编译Java代码,查看Java字节码

用法:javap <options> <classes>

选项:

-version:版本信息

-v:输出附加信息

-l:输出行号和本地变量表

-public:仅显示公共类和成员

-protected:显示受保护的/公共类和成员

-package:显示程序包/受保护的/公共类和成员 (默认)

-p或-private:显示所有类和成员

-c:对代码进行反汇编

-s:输出内部类型签名

-sysinfo:显示正在处理的类的系统信息 (路径, 大小, 日期, MD5 散列)

-constants:显示最终常量

-classpath <path>:指定查找用户类文件的位置

-cp <path>:指定查找用户类文件的位置

-bootclasspath <path>:覆盖引导类文件的位置

除此之外,目前有很多的反编译工具可以用,来查看Java编译后的代码。如下:

JD-GUI:一个用 C++ 开发的 Java 反编译工具,由 Pavel Kouznetsov开发,支持Windows、Linux和苹果Mac Os三个平台。而且提供了Eclipse平台下的插件JD-Eclipse、IntelliJ的插件JD-IntelliJ。JD-GUI不需要安装,直接点击运行,可以反编译jar,class文件。下载地址:http://jd.benow.ca/

Java常用命令之javap

 

procyon-decompiler:支持JDK1.8类的反编译,在很多方面做得非常不错,包括字符串的Switch、枚举声明方面、注解方面、匿名类、内部类、Java8新接口规范、Java8 Lambda表达式、Java8 方法传递。另外它在反编译后输出多种类型的结果,如Java源码、原始字节码、字节码AST(抽象语法树)。下载地址:https://bitbucket.org/mstrobel/procyon/downloads/

那么为什么还要使用javap呢。其实无论是反编译工具,还是javap命令,意在让开发人员更加理解Java代码的语法糖以及Java代码在JVM中的执行过程。

这里不介绍Java字节码指令了,否则篇幅太长,容易让人犯困。具体Java字节码科参考此篇文字:https://www.cnblogs.com/longjee/p/8675771.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值