黑马程序员技术交流社区

标题: 编写一个延迟加载的单例设计模式 [打印本页]

作者: 小二儿    时间: 2015-9-7 10:45
标题: 编写一个延迟加载的单例设计模式
package com.itheima;

/**
* 编写一个延迟加载的单例设计模式
*
* @author sunbaoque
*
*
* 单例设计模式分两种,一种是懒汉式,一种是饿汉式。其中懒汉式就是延迟加载的单例设计模式
*
*/
public class Test6 {
        private static Test6 s = null;//声明一个私有对象

        private Test6() {                        //私有化构造器,避免被实例化
        }

        public static Test6 getInstance() {        //对外开放一个接口,提供实例化好的对象
                if (s == null) {                                       
                        synchronized (Test6.class) // 避免当前线程创建对象时,其他线程执行上一条语句再次生成对象,产生多线程问题
                        {
                                if (s == null)                        //创建对象
                                        s = new Test6();
                        }
                }
                return s;                                                //返回唯一的对象
        }
}

作者: Nick_KJ    时间: 2015-9-7 11:06
理解的很好,继续努力。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2