美文网首页面试题汇总
懒汉式 与 饿汉式 的区别

懒汉式 与 饿汉式 的区别

作者: zhihaoZzz | 来源:发表于2017-12-05 19:34 被阅读32次

    所谓“懒汉式”与“饿汉式”的区别,是在与建立单例对象的时间不同。

    “懒汉式”是在你真正用到的时候才去建这个单例对象:

    懒汉式在多线程情况下存在安全问题

    比如:有个单例对象

    private static Student student = null;  //不建立对象

    Student getInstance(){

    if(student == null) {        //先判断是否为空

    student = new Student();  //懒汉式做法

    }

    return student;

    }

    “饿汉式”是在不管你用的用不上,一开始就建立这个单例对象:

    比如:有个单例对象

    private static Student student = new Student(); //建立对象

    Student getInstance(){

    return student;  //直接返回单例对象

    }

    相关文章

      网友评论

        本文标题:懒汉式 与 饿汉式 的区别

        本文链接:https://www.haomeiwen.com/subject/bfthixtx.html