javap命令反汇编一个类文件。 javap命令显示有关类文件中存在的字段, 构造函数和方法的信息。
使用Javap工具的语法让我们看看如何使用javap工具或命令。
javap fully_class_name
使用Javap工具的示例
javap java.lang.Object
输出:
Compiled from "Object.java"
public class java.lang.Object {
public java.lang.Object();
public final native java.lang.Class<
?>
getClass();
public native int hashCode();
public boolean equals(java.lang.Object);
protected native java.lang.Object clone() throws java.lang.CloneNotSupportedException;
public java.lang.String toString();
public final native void notify();
public final native void notifyAll();
public final native void wait(long) throws java.lang.InterruptedException;
public final void wait(long, int) throws java.lang.InterruptedException;
public final void wait() throws java.lang.InterruptedException;
protected void finalize() throws java.lang.Throwable;
static {};
}
在类中使用javap工具的另一个示例让我们对java文件使用javap命令。
class Simple{
public static void main(String args[]){
System.out.println("hello java");
}
}
现在, 让我们使用javap工具来反汇编类文件。
javap Simple
输出:
Compiled from ".java"
class Simple {
Simple();
public static void main(java.lang.String[]);
}
javap -c命令你可以使用javap -c命令查看反汇编的代码。反映Java字节码的代码。
javap -c Simple
输出:
Compiled from ".java"
class Simple {
Simple();
Code:
0: aload_0
1: invokespecial #1// Method java/lang/Object."<
init>
":()V
4: returnpublic static void main(java.lang.String[]);
Code:
0: getstatic#2// Field java/lang/System.out:Ljava/io/PrintStream;
3: ldc#3// String hello java
5: invokevirtual #4// Method java/io/PrintStream.println:(Ljava/lang/String;
)V
8: return
}
javap工具的选项【了解javap工具】javap工具的重要选项如下。
选项 | 描述 |
---|---|
-help | 打印帮助信息。 |
-l | 打印行号和局部变量 |
-c | 反汇编代码 |
-s | 打印内部类型签名 |
-sysinfo | shows system info (path, size, date, MD5 hash) |
-constants | 显示静态最终常数 |
-version | 显示版本信息 |
推荐阅读
- Java URL
- 最佳多显示器工具合集(顶级spacedesk替代软件推荐)
- 沙盒软件推荐(Windows和Linux的14种最佳Sandboxie替代品)
- 17种最佳Yawcam替代软件(网络摄像头工具推荐合集)
- 电子邮件营销的12种最佳Klaviyo替代品合集推荐
- SSH客户端(Windows、macOS和Linux的15种最佳MobaXterm替代品)
- 15种最佳YNAB替代软件(预算管理工具合集推荐)
- 云开发平台合集推荐(Windows、Linux和在线的Heroku的10大替代品)
- 15种更好的网站统计分析工具(最佳Hotjar替代品)