我看到一些 Java 应用程序的代码如下:public class Test { public Test(); Code: 0: aload_0 1: invokespecial #1 // Method java/lang/Object."":()V 4: return public static void main(java.lang.String[]); Code: 0: invokestatic #2 // Method printOne:()V 3: invokestatic #2 // Method printOne:()V 6: invokestatic #3 // Method printTwo:()V 9: return public static void printOne(); Code: 0: getstatic #4 // Field java/lang/System.out:Ljava/io/PrintStream; 3: ldc #5 // String Hello World 5: invokevirtual #6 // Method java/io/PrintStream.println:(Ljava/lang/String;)V 8: return public static void printTwo(); Code: 0: invokestatic #2 // Method printOne:()V 3: invokestatic #2 // Method printOne:()V 6: return }我想知道这是一种什么样的混淆,有什么工具可以混淆这样的 JAR 文件。
2 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
这就是javac生成的 - java代码的编译器。将其转换为代码实际上非常容易:
public class Test {
// an implicit constructor:
public Test(){
}
public static void testOne(){
System.out.println("Hello World");
}
public static String testTwo(){
testOne();
testOne();
}
}
添加回答
举报
0/150
提交
取消