【单例模式】—— 懒汉式与饿汉式

一、单例模式

1.对于整个软件系统中,对某个类只能有一个实例化对象。
2.单例类应该满足一下条件:

对于构造器是该类私有的 【自己创建类的实例】
只能有一个类的实例 【一般定义为私有静态的】
提供返回对象的共有方法 【外部可以通过这个方法创建或调用这个固定的实例】


二、饿汉式

特点:在程序启动或单例类被加载时,就会创建这个类的实例。
缺点:在每次加载类信息时就会创建对象,浪费空间资源。

?? 代码说明:


三、懒汉式

特点:程序只会创建一次单例类实例【在第一次访问单例类时】
缺点:线程是不安全的
?? 代码说明:


四、饿汉式与懒汉式的区别

(1)二者的主要区别在于对象的创建时机不同;饿汉式是在类加载就创建了对象实例,而懒汉式是在使用时才会创建

(2)饿汉式不存在线程问题,懒汉式存在线程安全问题

(3)饿汉式可能存在浪费资源的问题,因为如果没有使用这个创建的对象实例,那么就浪费了资源,懒汉式在使用创建对象实例

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览92402 人正在系统学习中

来源:我就学习一小会儿

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年3月15日
下一篇 2022年3月15日

相关推荐