实现“单例”有三形式:饥汉模式,饱汉模式,其他模式
——饥汉模式
class Singleton{
private static Singleton singleton = null;
public static synchronized Singleton getInstance(){
if(singleton == null){
singleton = new Singleton();
return singleton;
}
}
}
——饱汉模式
class Singleton{
private static Singleton singleton = new Singleton();
private Singleton(){}
public static Singleton getInstance(){
return singleton;
}
}
——枚举
public enum SingleTon{
ONE;
}
定义一个类,它的构造函数为private的,所有方法为static的
第一种形式相对要更加安全些 !!!