利用两种方式分别实现单例模式(懒汉式、饿汉式)

复制代码
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;
    }
}
相关推荐
Moshow郑锴1 小时前
sql-pipeline - 基于PostgreSQL的SQL健康检查与发布编排平台
java·sql
weixin_307779134 小时前
C++代码实现MATLAB中的dlarray函数功能
开发语言·c++·算法·matlab
一水鉴天7 小时前
映射、哈希表与哈斯图:计算机科学的三种基线 20261003(元宝)
开发语言·人工智能
Frank_refuel7 小时前
C++11之一场名为“搬家”的 C++ 之旅
开发语言·c++
Wang's Blog8 小时前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx
2601_962071579 小时前
类变量和全局变量的查找路径有什么区别?
开发语言·python
\光辉岁月/10 小时前
5.java-数组
java·开发语言
Java后端的Ai之路10 小时前
Python进阶探索29_eval内置函数
开发语言·python·探索·eval·内置函数
谢亮_vipxieliang10 小时前
Spring 事务失效的常见场景
java·开发语言·数据库·spring boot
时间的拾荒人10 小时前
Qt 多线程详解:从 QThread 到实战
开发语言·qt·面试