📜  Java中的javap工具与示例

📅  最后修改于: 2022-05-13 01:55:46.161000             🧑  作者: Mango

Java中的javap工具与示例

javap工具


javap工具用于获取任何类或接口的信息。 javap 命令(也称为Java反汇编器)反汇编一个或多个类文件。它的输出取决于使用的选项(“ -c ”或“ -verbose ”分别用于字节码和字节码以及内部信息)。如果没有使用任何选项,javap 会打印出传递给它的类的包、受保护和公共字段和方法。
句法:
javap [option] [classname]

不使用选项时:
句法:

javap class_name

输出:

使用选项时:

选项的描述和实现如下:
注意:某些选项会打印很长的输出,无法完全显示。请尝试在您的系统中查看所用选项的完整输出。

  • -help–help-? :
    此选项打印 javap 命令的帮助消息。
    句法:
    javap -help
    

    输出:

  • -版本 :
    此选项打印Java的版本信息。
    句法:
    javap -version
    

    输出:

  • -v-verbose :
    此选项打印附加信息,例如堆栈大小、本地数和方法的参数。
    句法:
    javap -v class_name
    

    输出:

  • -l:
    此选项打印行号和局部变量表。
    句法:
    javap -l class_name
    

    输出:

  • -上市 :
    此选项仅打印公共类和成员。
    句法:
    javap -public class_name
    

    输出:

  • -受保护:
    此选项打印受保护/公共类和成员。
    句法:
    javap -protected class_name
    

    输出:

  • -包裹 :
    此选项打印包/受保护/公共类和成员(默认)。
    句法:
    javap -package class_name
    

    输出:

  • -C :
    此选项打印反汇编代码。
    句法:
    javap -c class_name
    

    输出:

  • -s:
    此选项打印内部类型签名。
    句法:
    javap -s class_name
    

    输出:

  • -系统信息:
    此选项打印正在处理的类的系统信息(路径、大小、日期、MD5 哈希)。
    句法:
    javap -sysinfo class_name
    

    输出:

  • -常数:
    此选项打印类的最终常量。
    句法:
    javap -constants class_name
    

    输出:

    参考资料: https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javap.html