2012-06-14 25 views

回答

7

默认情况下,javac不包括生成的class文件中的调试信息。这些信息是例如方法参数名称(但方法和字段名称总是存储以允许反射)。当参数名称不知道时,JD-GUI和其他反编译器会构成一些合理的名称。他们没有被混淆 - 只是他们不在那里。

-g标志编译代码:

javac -g SomeClass.java 

刚才检查JD-GUI - 它显示正确的参数名称即可。