public class Singleton {
private static Singleton instance = null;
public static synchronized Singleton getInstance() {
if (instance==null)
instance = new Singleton();
return instance;
}
public static void main(String[] args){
Singleton aa = new Singleton();
System.out.println (aa);
Singleton bb = new Singleton();
System.out.println (bb);
}
}
class Singleton {
private static Singleton instance = null;
//private Singleton(){}
public static synchronized Singleton getInstance() {
if (instance==null)
instance = new Singleton();
return instance;
}
}
public class Test{
public static void main(String[] args){
Singleton aa = new Singleton();
System.out.println (aa);
Singleton bb = new Singleton();
System.out.println (bb);
}
}
第一式中的private static Singlton instance = new Singlton();
不管在什么线程环境下不 是都只初始化一次吗?
并且只有一个实例。