As the title said, why is static nested class singleton thread-safe?
public class Singleton {
private static class SingletonHolder {
public static Singleton instance;
public static Singleton getInstance() {
if (null == instance) {
instance = new Singleton();
}
}
}
public static Singleton getInstance() {
return SingletonHolder.getInstance();
}
}