任何人都可以解释下面的代码如何在多线程环境中正常工作,特别是当它不使用synchronized关键字时?单线程在多线程中不使用同步关键字
public class Singleton {
private Singleton() {}
private static class SingletonHolder {
private static final Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return SingletonHolder.INSTANCE;
}
}
@leppie,这似乎有点苛刻...,尤其是对于相对新手(虽然我不否认你正确的做到这一点,我们的票是我们自己做的,因为我们认为合适的 - “我不同意你说的话,但我会为你的死亡权利而斗争”以及所有爵士乐)。我认为这些选票适用于Q/A本身,而不是发布人员的某种奖励/惩罚机制。由于您实际上是通过添加标签来修复问题的,因此不能认为问题不足。 IMOBIBWBJAMW(在我看来,但我以前错了 - 只是问我的妻子):-) – paxdiablo