单例模式详解

什么是单例设计模式:在应用程序中,只能存在某类的一个实例对象 


1)分类:

1 懒汉式


a)private static 该类的变量名;
b)私有的构造方法(不允许外界创建该类对象)
c)public static 该类类型 getInstance(){ (向外界提供了访问该类对象的方法)

}


public class TransRecordManager{
private static TransRecordManager manager;

private TransRecordManager(){}

public static TransRecordManager getInstance(){
if(manager==null){
manager = new TransRecordManager();
}
return manager;
}
}



2 饿汉式
public class TransRecordManager{
private static TransRecordManager manager= new TransRecordManager();

private TransRecordManager(){}

public static TransRecordManager getInstance(){

return manager;
}
}




3)饿汉和懒汉的区别?

3.1)懒汉式:默认变量是null,只有当需要对象时,

  才判断对象是否存在,如果不存在则创建。

并发访问操作时,是线程不安全的。
--》(如何解决?可以在方法头加锁,实现同步synchronized)

3.2)饿汉式:默认变量中就装载该类对象

                      是线程安全的。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值