package testsingle;
//实现单例的两种方式
public class TestMySingle {
public static void main(String[] args) {
ClassA ca1 = ClassA.getClassA();
ClassA ca2 = ClassA.getClassA();
System.out.println(ca1==ca2);
ClassB cb1 = ClassB.getClassB();
ClassB cb2 = ClassB.getClassB();
System.out.println(cb1==cb2);
}
}
class ClassA{ //饿汉式
private static final ClassA ca = new ClassA();
private ClassA(){}
public static ClassA getClassA(){
return ca;
}
}
class ClassB{ //懒汉式
private static ClassB cb ;
private ClassB(){}
public synchronized static ClassB getClassB(){
if(cb==null){
cb = new ClassB();
}
return cb;
}
}
利用两种方式分别实现单例模式(懒汉式、饿汉式)
heirui_Oooo2024-12-25 15:18
相关推荐
曹牧5 分钟前
C#:姓名脱敏缺点内向6 分钟前
C# 中 Word 文档目录的插入与删除指南r***d8657 分钟前
Rust宏编程指南czhc114007566315 分钟前
C# 1120抽象类 staticwhltaoin21 分钟前
【 Java微服务 】Spring Cloud Alibaba :Nacos 注册中心与配置中心全攻略(含服务发现、负载均衡与动态配置)你不是我我23 分钟前
【Java 开发日记】有了解过 SpringBoot 的参数配置吗?稚辉君.MCA_P8_Java31 分钟前
Gemini永久会员 Java HotSpot 虚拟机(JVM)的优点ivanfor66633 分钟前
多租户架构的三级权限体系:设计逻辑与精准控制实现zzzsde42 分钟前
【C++】C++11(1):右值引用和移动语义学困昇42 分钟前
C++11中的包装器