了解 javap 工具2024 年 8 月 29 日 | 阅读 3 分钟 javap 命令反汇编一个类文件。 javap 命令显示有关类文件中存在的字段、构造函数和方法的信息。 使用 javap 工具的语法让我们看看如何使用 javap 工具或命令。 使用 javap 工具的示例输出 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 命令。 文件名: Simple.java 现在让我们使用 javap 工具反汇编类文件。 输出 Compiled from "Simple.java"
class Simple {
Simple();
public static void main(java.lang.String[]);
}
javap -c 命令您可以使用 javap -c 命令来查看反汇编的代码。 反映 java 字节码的代码。 输出 Compiled from "Simple.java"
class Simple {
Simple();
Code:
0: aload_0
1: invokespecial #1 // Method java/lang/Object."javap 工具的选项javap 工具的重要选项如下。
让我们看看如何通过一个例子来使用这些选项。 对于以下文件 (ABC.java),我们将使用上述选项。 文件名: ABC.java 命令: javap -c ABC 输出 Compiled from "ABC.java"
public class ABC {
public ABC();
Code:
0: aload_0
1: invokespecial #1 // Method java/lang/Object."命令: javap -l ABC 输出 Compiled from "ABC.java"
public class ABC {
public ABC();
LineNumberTable:
line 1: 0
public static void main(java.lang.String[]);
LineNumberTable:
line 6: 0
line 9: 39
line 12: 42
line 14: 54
line 16: 69
}
命令: javap -s ABC 输出 Compiled from "ABC.java"
public class ABC {
public ABC();
descriptor: ()V
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
}
命令: javap -sysinfo ABC 输出 Classfile /C:/Users/Nikhil Kumar/Documents/ABC.class
Last modified Sep 11, 2021; size 970 bytes
SHA-256 checksum 576adf03386399a4691e0ce5b6c5aa5d964b082a1a61299bac5632942e413312
Compiled from "ABC.java"
public class ABC {
public ABC();
public static void main(java.lang.String[]);
}
命令: javap -constants ABC 输出 Compiled from "ABC.java"
public class ABC {
public ABC();
public static void main(java.lang.String[]);
}
命令: javap -version ABC 输出 14
Compiled from "ABC.java"
public class ABC {
public ABC();
public static void main(java.lang.String[]);
}
下一个主题creating-javap-tool |
我们请求您订阅我们的新闻通讯以获取最新更新。