public class Singleton {//懒汉式模式:第一次初始化才加载 // private static Singleton singleton; // private Singleton(){};//保证单例 // public static Singleton getInstance(){ // if(singleton==null){ // singleton=new Singleton(); // } // return singleton; // } //饿汉式模式:内加载就初始化,浪费内存 // private static final Singleton SINGLETON = new Singleton(); // private Singleton(){}; // public static Singleton getInstance(){ // return SINGLETON; // } //登记者模式:结合了懒汉和饿汉式的优点,并且不用加锁 private Singleton(){}; public static Singleton getInstance(){ return Holder.SINGLETON; } private static class Holder{ private static final Singleton SINGLETON = new Singleton(); }}
java单例的三种模式
最新推荐文章于 2022-01-12 11:34:40 发布