通过使用javac.exe,我得到了.class文件。.class文件是字节码吗?或者.class文件包含字节码?在cmd中编译.java之后,字节码在哪里?
发布于 2019-02-09 18:58:09
是的,Java类文件是包含可在Java虚拟机(JVM)上执行的Java字节码的文件。
Java类文件通常由Java编译器从包含Java类的Java编程语言源文件(.java文件)中产生(或者,也可以使用其他JVM语言来创建类文件)。如果源文件有多个类,则每个类都被编译成单独的类文件。
您可以使用其中一种工具来查看.class文件的字节码,例如javap、jd或jd-gui。
发布于 2019-02-09 22:39:50
.class文件包含字节码,而不是‘The’字节码。
这种情况与(比方说)从生成本机代码的编译器/链接器系统生成的.exe文件相同。.exe文件包含机器指令,还包含准备执行这些指令所需的其他信息。
同样,.class文件是包含可执行字节码和其他信息的结构化对象。
发布于 2019-02-09 21:09:27
javap命令可反汇编一个或多个.class文件。
javap -c package.MyClass还有几个库和工具可以帮助您使用Java字节码,例如ASM和Jasmin。
https://stackoverflow.com/questions/54605514
复制相似问题