Alp*_*aaa 3 java obfuscation compilation
我无法理解为什么Java编译器不会通过用一些唯一的ID替换它们来缩短变量,参数和方法名称的名称.
例如,给定课程
public class VeryVeryVeryVeryVeryLongClass {
private int veryVeryVeryVeryVeryLongInt = 3;
public void veryVeryVeryVeryVeryLongMethod(int veryVeryVeryVeryVeryLongParamName) {
this.veryVeryVeryVeryVeryLongInt = veryVeryVeryVeryVeryLongParamName;
}
}
Run Code Online (Sandbox Code Playgroud)
编译后的文件包含所有这些非常长的名称:

简单的唯一ID不会加快解析速度,还会提供第一个混淆吗?
gus*_*afc 10
您假设总是需要混淆,但它不是:
String name = p.a1()而不是代码String name = p.getName() 当您交付完成的应用程序时,混淆通常是最后一步,即使这样,除非目标平台存在严重的内存限制,否则它不会经常使用.