【发布时间】:2013-06-09 04:57:55
【问题描述】:
我编写了以下代码来实现单例模式:
public final class Test {
static final class TestHolder {
private static final Test INSTANCE = new Test();
}
private Test() {}
public static Test getInstance() {
return TestHolder.INSTANCE;
}
}
当我编译这个文件时,它应该生成Test.class 和Test$TestHolder.class,但它也会生成Test$1.class。这没有意义。那么为什么会这样?
【问题讨论】:
-
@sircapsalot 问题是匿名类在哪里。
-
这类问题值得投票。
-
我在这里没有得到
Test$1.class文件(JDK 7 或 6)。还有人吗? -
是的,
javac 1.6.0_45在我的 Mac 上创建它,我在下面解释了它的用途。
标签: java compilation