我注意到 enums
在编译膨胀了总大小之后引入了许多额外的类文件(类 $1)。它似乎连接到每个使用枚举的类,而且这些类通常是重复的。
为什么会发生这种情况,有没有办法在不删除枚举的情况下防止这种情况发生。
(问题的原因是空间对我来说很重要)
剪辑
关于进一步调查这个问题,Sun 的 每次在 Enum 上使用开关时,Java1.6都会创建一个额外的合成类。它使用某种交换地图。这个站点有一些更多的信息,给你告诉你如何分析 Javac 正在做什么。
每次在枚举上使用开关时,额外的物理文件似乎是一个高昂的代价!
有趣的是,Eclipse 的编译器并不生成这些附加文件。我想知道是否唯一的解决方案是切换编译器?