一.简介
单例的目的保证该对象只能存在一个,只有应用场景相当多,列如jedisUtils..
二.代码
测试代码如下:
/**
* @ClassName: SingeTest
* @Description: 饱汉式单例
* @author: ck
* @date: 2019年2月23日 下午3:37:47
*/
public class SingeTest {
public static SingeTest singeTest=null;
// 将构造方法私有化,使其只能通过getSingeTestInstance方法实例化
private SingeTest() {}
public static SingeTest getSingeTestInstance() {
//判断是否初始化过,初始化过则直接返回对象
if(singeTest==null) {
//加锁
synchronized (SingeTest.class) {
//双重锁,判断是否为空
if(singeTest==null) {
singeTest = new SingeTest();
}
}
}
return singeTest;
}
}
public class MainSinge { public static void main(String[] args) { SingeTest singeTest1 = SingeTest.getSingeTestInstance(); SingeTest singeTest2 = SingeTest.getSingeTestInstance(); System.out.println(singeTest1==singeTest2); } }
测试结果:
