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; //返回唯一的对象
}
}
|
|