Java单例模式

单例设计模式   

采取一定的方法保证整个软件系统中对某个类只能存在一个对象实例。


设计思想:将要创建实例的类的构造器设置为私有的(private)这样,就不能用new操作符在外部产生新的对象,但在类的内部可以产生该类的对象,类的外部无法得到类的对象,只能通过静态方法以返回类的内部创建对象,静态方法只能访问类中静态的成员变量,所以类内部产生的类的对象的变量也得是静态的。

两种单例模式:饿汉模式和懒汉模式

饿汉模式:  一开始就new对象

1、创建类的私有构造器

2、new一个私有的 静态的 实例对象

3、创建一个公共的  静态的  返回值是 new对象的一个方法体

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Zu95rCR5LuZ5aWz,size_20,color_FFFFFF,t_70,g_se,x_16

 懒汉式:需要才创建对象

1、创建一个私有的构造器

2、声明一个私有的 静态的初始为空的对象

3、创建一个公共的 静态的  返回值为要创建的对象的方法,便于外部调用

4、判断声明的实例是否为空,若为空创建对象。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Zu95rCR5LuZ5aWz,size_20,color_FFFFFF,t_70,g_se,x_16

 懒汉式VS饿汉式

懒汉式的好处:使用时创建对象,对象生命周期小

                坏处: 线程不安全

饿汉式好处:线程安全

           坏处:创建的对象,生命周期长,占用内存

单例模式用于:数据库连接池

                           Java runtime中...........

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值