package com.company;
/**
* @Author you guess
* @Date 2021/1/29 09:32
* @Version 1.0
* @Desc 懒汉式 双重校验锁
*/
public class SingletonTest {
//变量私有
private volatile static SingletonTest instance = null;//用volatile static 修饰
//构造方法私有
private SingletonTest() {
}
//获取实例的方法 公用
public static SingletonTest getInstance() {//用static修饰方法,类可以直接调用
if (instance == null) {
synchronized (SingletonTest.class) {//类锁
if (instance == null) {
instance = new SingletonTest();
}
}
}
return instance;
}
public void test1(){
System.out.println("SingletonTest.test1");
}
}
Java单例模式 双重校验锁 2021
最新推荐文章于 2024-08-06 10:12:16 发布
本文探讨了Java中的单例模式实现,重点解析了双重校验锁(DCL)的原理,包括为何需要两次if判断以及volatile关键字的作用。同时,也提及了在JDK1.8下该模式的实现细节。
摘要由CSDN通过智能技术生成