我试图通过反编译.class文件来了解Java编译器的工作原理.我使用了Java反编译器(http://jd.benow.ca/)和showmycode(http://www.showmycode.com/)它们在.java文件中显示了不同的源代码.为什么?我应该相信哪一个.
.java文件
class HelloWorld{
public static void main(String[] args){
System.out.println("Hello, World!");
}
}
Run Code Online (Sandbox Code Playgroud)
.class文件由java反编译器解编译:
import java.io.PrintStream;
class HelloWorld
{
public static void main(String[] paramArrayOfString)
{
System.out.println("Hello, World!");
}
}
Run Code Online (Sandbox Code Playgroud)
.class文件由showmycode解编译
import java.io.PrintStream;
class HelloWorld {
HelloWorld() {
}
public static void main(string args[])
{
system.out.println("Hello, World!");
}
}
Run Code Online (Sandbox Code Playgroud)