黑马程序员_面试之懒汉式和饿汉式小结

来源:互联网 发布:d5 1dx2知乎 编辑:程序博客网 时间:2024/05/01 13:32

------- android培训、java培训、期待与您交流! ----------

饿汉式:先初始化对象,这是开发时用的一种方式,其安全,简单,速度快。不用调用时创建。

public class Single {
         Single(){}
         private static Single instance=new Single();
         public static Single getlnstance(){
            return instance;
         }
}

懒汉式:对象是方法调用时才初始化,也叫做对象的延时加载,在调用时对象才建立。速度慢。

改进后的代码(双重加锁)

public class Single {
   private Single(){}
   private static Single instance;
   public synchronized static Single getlnstance(){
    init();
    if(instance==null){
     synchronized(Single.class){
        if(instance==null)
            instance=new Single();
     }
     return instance;
    }
    return instance;
   }
   private static void init(){}
}

原创粉丝点击