javap
JDK自带的反汇编器,可以查看java编译器为我们生成的字节码。通过它,我们可以对照源代码和字节码,从而了解很多编译器内部的工作。
功能说明:
Java 类文件解析器。
语法:
javap [ 命令选项 ] class. . .
补充说明:
javap 命令用于解析类文件。其输出取决于所用的选项。若没有使用选项,javap 将输出传递给它的类的 public 域及方法。javap 将其输出到标准输出设备上。
命令选项
-help 输出 javap 的帮助信息。
-l 输出行及局部变量表。
-b 确保与 JDK 1.1 javap 的向后兼容性。
-public 只显示 public 类及成员。
-protected 只显示 protected 和 public 类及成员。
-package 只显示包、protected 和 public 类及成员。这是缺省设置。
-private 显示所有类和成员。
-J[flag] 直接将 flag 传给运行时系统。
-s 输出内部类型签名。
-c 输出类中各方法的未解析的代码,即构成 Java 字节码的指令。
-verbose 输出堆栈大小、各方法的 locals 及 args 数。
-classpath[路径] 指定 javap 用来查找类的路径。如果设置了该选项,则它将覆盖缺省值或 CLASSPATH 环境变量。目录用冒号分隔。
- bootclasspath[路径] 指定加载自举类所用的路径。缺省情况下,自举类是实现核心 Java 平台的类,位于 jrelib
t.jar 和 jrelibi18n.jar 中。
-extdirs[dirs] 覆盖搜索安装方式扩展的位置。扩展的缺省位置是 jrelibext。
分享到:
相关推荐
NULL 博文链接:https://bolinyang.iteye.com/blog/1830472
这个压缩包`class文件编译器.zip`很可能包含了关于如何将Java源代码编译成`.class`文件的相关工具和信息。`ReadMe.txt`可能是提供编译过程的说明或者编译器使用的指南。 1. **Java源代码与Class文件**: Java源...
- **unzip命令**:虽然不是专门针对JAR文件,但`unzip`命令可以解压JAR文件内容到本地文件系统,然后用文本编辑器或`javap`命令查看class文件。例如,`unzip jar_file_name.jar`。 2. **使用Java反编译器**: - *...
例如,一个简单的`HelloWorld`类,通过反编译工具(如javap)查看其字节码,可以观察到`main`方法的执行流程。 4. **样例数据分析**: 提供的jvm.docx文件可能包含更详细的案例分析,比如如何解析特定的class文件...
jad是一个早期的Java反汇编器,它可以解析Class文件并展示其中的字节码,但现代的开发环境中更常用的是javap,它是JDK自带的命令行工具,提供了丰富的选项来查看类的结构和字节码细节。 通过解码Class文件,开发者...
在实际开发中,解析Class文件的工具和库有很多,如javap(Java字节码反汇编器)、ASM、BCEL、Javassist等。这些工具可以帮助开发者深入理解字节码,甚至自动生成或修改字节码,实现一些高级功能。 总而言之,Java...
"jd-gui"是一款小巧且易于使用的Java反编译工具,它提供了一个图形化的用户界面,允许开发者直观地查看和分析.class文件。jd-gui支持直接打开.jar或.class文件,显示反编译后的源代码,同时提供代码高亮、折叠等功能...
javap是JDK自带的反汇编器,它可以显示一个class文件中类的常量池、字段、方法、指令等信息,对于学习Java字节码是非常实用的工具。使用"-verbose"选项可以得到更多的输出信息,帮助理解字节码的执行过程。 在Java...
jd-gui.exe是其中一种常用的开源反编译工具,它提供了一个图形用户界面(GUI),使得用户可以直接打开并查看.class文件的内容。这个.exe程序运行在Windows操作系统上,允许用户快速浏览和理解二进制代码的逻辑。通过...
另外,` jclasslib`是一款可视化的字节码查看器,它提供了更直观的方式查看和分析.class文件,包括类结构、常量池、字段和方法的详细信息。使用这样的工具可以帮助我们更好地理解JVM的内部工作原理。 此外,学习...
在Java编程语言中,"编译好的CLASS文件"是指经过Java编译器(javac)处理的源代码(.java文件)所生成的目标文件。这些文件以二进制格式存储,可以直接由Java虚拟机(JVM)执行。CLASS文件包含了Java类或接口的字节...
`javap` 是 Java 开发工具包 (JDK) 中的一个重要工具,主要用于反编译 `.class` 文件中的字节码。通过 `javap`,开发者能够深入了解 Java 编译器是如何处理源代码并生成字节码的,这对于优化程序性能和理解 Java ...
java class和源码 deep-in-jvm ...运行javap分析Class文件字节码 javap -verbose Main > Main.bytecode 分析包含内部类的源码编译出的Class文件 javap -verbose 'Main$Box.class' > 'Main$Box.bytecode'
在实际开发中,当我们遇到奇怪的运行时错误或需要深入理解代码的执行流程时,能够直接查看`class`文件和字节码就显得尤为重要。通过分析字节码,我们可以发现潜在的优化点,比如减少方法调用、优化循环结构,甚至...
《深入剖析Java Class文件格式》 Java程序在编译后会生成后缀为`.class`的文件,这些文件包含了运行时所需的所有信息。本实验旨在通过详细分析一个名为`Test.class`的文件,揭示其内部结构,从而理解Java类文件的...
Java Class文件是Java程序编译后的二进制形式,它是Java虚拟机(JVM)运行的基础。Class文件的格式是严格定义的,确保了JVM...开发者可以通过反编译工具,如javap,来查看Class文件的详细内容,进一步了解其内部结构。
javap 是 JDK 中的一个命令行工具,主要用于对给定的 class 文件进行反编译,了解 Java 编译器内部的工作机制,并提高程序执行的效率。下面是 javap 的使用说明。 1. javap 的基本用法 javap 的基本用法是 javap ...
5. **反编译工具**:如`javap`命令是Java自带的反汇编工具,可以查看字节码指令,帮助理解代码的运行过程。另外,还有更强大的第三方工具,如JAD、FernFlower等,可以反编译成更接近源代码的形式。 6. **字节码分析...
此外,还学习了如何使用`javap`命令来查看字节码文件的具体内容,这对于理解Java程序在底层的运行机制非常重要。 以上就是关于Java运行原理及javap命令运行结果的相关知识点的详细介绍。希望对你有所帮助!