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

复制代码
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;
    }
}
相关推荐
yyueshen1 分钟前
单例模式,有必要用volatile么?
java·单例模式·设计模式
一条闲鱼_mytube3 分钟前
[Kubernetes] 7控制平面组件
java·平面·kubernetes
Stack Overflow?Tan904 分钟前
c++实现在同一台主机两个程序实现实时通信
开发语言·c++
MZWeiei4 分钟前
Scala:case class(通俗易懂版)
开发语言·后端·scala
闯闯桑5 分钟前
scala 中的@BeanProperty
大数据·开发语言·scala
计算机老学长7 分钟前
基于Python的商品销量的数据分析及推荐系统
开发语言·python·数据分析
MZWeiei11 分钟前
scala有关 类 的知识点与Java的比较
开发语言·scala
Y雨何时停T34 分钟前
Spring IoC 详解
java·spring·rpc
&白帝&1 小时前
Java @PathVariable获取路径参数
java·开发语言·python