我注意到enums在编译膨胀总大小之后引入了许多额外的类文件(Class $ 1).它似乎附属于甚至使用枚举的每个类,并且这些通常是重复的.
为什么会发生这种情况,并且有一种方法可以在不删除枚举的情况下阻止这种情况
(问题的原因是空间对我来说是非常宝贵的)
编辑
在进一步研究这个问题时,每次在Enum上使用开关时,Sun的Javac 1.6都会创建一个额外的合成类.它使用某种SwitchMap.这个网站有更多信息,这里告诉你如何分析Javac正在做什么.
每次在枚举上使用开关时,额外的物理文件似乎都要付出高昂的代价!
有趣的是,Eclipe的编译器不会生成这些附加文件.我想知道唯一的解决方案是切换编译器吗?