黑马程序员——多线程——单利设计模式之——懒汉式

来源:互联网 发布:韦正互译软件哪里下载 编辑:程序博客网 时间:2024/04/27 17:22

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

/**

 * 单利设计模式之懒汉式:
 * 1.懒汉式与饿汉式的区别在于懒汉式延时加载,用的时候再加载;
 * 2.在多线程访问懒汉式的时候会痴线安全隐患,可能会创建出多个对象,解决办法就是用同步;
 * 3.尽量用同步代码块,因为如果用同步函数的话每次都判断锁浪费资源,
 * 所以用同步代码块,在外层加上一个s是否已经存在的判断;
 * 4.同步函数用的锁是this,静态同步函数用的锁是类.class,这块要注意;
 * */
class Single {
    private static Single s=null;
    private Single(){}
    public static Single getInstance()
    {
        if(s==null)//先判断对象是否存在,就避免了每次都判断锁
        {
            synchronized(Single.class)
            {
                if(s==null)
                {
                    s=new Single();
                }
            }
        }
        return s;
        
    }
    

}
原创粉丝点击