设计模式(一) 单例模式

单例模式

单例模式的写法:
1. 饿汉模式

 public class Singleton{
    private static Singleton instance=new Singletion();
    private Singleton(){}
    public static Singleton getInstance(){
        return instance;
    }
}
  1. 懒汉模式
    直接synchroinzed
 public class Singleton{
    private static Singleton instance;
    private Singleton(){}
    public synchronized static Singleton getInstance(){
        if(instance==null){
            return new Sinleton();
        }
        return instance;
    }
}

DCL

public class Singleton {
    private static Singleton instance;
    private Singleton(){}
    public  static Singleton getInstance(){
        if(instance==null){
            synchronized (Singleton.class){
                if(instance==null){

                    return new Singleton();
                }
            }
        }
        return instance;
    }
}

内部类

最推荐写法 enum

猜你喜欢

转载自blog.csdn.net/the_conquer_zzy/article/details/80951448