管窥单例设计模式

在java中设计模式有21种,单例设计模式只是其中的一种。
而SpringBoot中常用的的设计模式为门面模式,代理模式,单例模式。所以讲讲单例模式还是很有必要的。

以下就是单例设计模式的代码:
class designsingle{
public static void main(String[] args){
MySingle my= MySingle.getmy();
MySingle my2=MySingle.getmy();
system.out.println(my==my2)
//my与my2相等吗
//实际上他们是相等的,是同一个对象。why

}

}

//饿汉式(先把对象准备好,要用的时候直接拿走)
class MySingle{

private MySingle(){}

static private Mysingle my=new MySingle();
static public MySingle getmy(){
return my;
}
}

//懒汉式主要体现了延迟加载与多线程的思想,为了保证线程的安全性所以在静态方法上加了synchronized同步锁。
class MySingle2{
private MySingle2(){}
static private MySingle2 my;
synchronized static public MySingle2 getmy(){
if(my==null){
my=new MySingle2();
}
return my;
}

}

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值