我的设计模式-单例(Singleton)
来源:互联网 发布:运行java程序 编辑:程序博客网 时间:2024/05/16 14:41
单例模式是最常见的设计模式,比较简单,就是保证在JVM内,一个对象只有一个实例存在。比如:spring bean默认模式就是单例。
一般按照对象实例创建的时机,单例又分为懒汉模式和饿汉模式:
懒汉模式在类加载的时候不创建对象实例,在实际使用中判断对象实例是否存在,如果存在则直接返回;如果不存在,则new出对象实例再返回;
该模式有3个关键点:
1、构造函数私有;
2、静态获取对象实例的方法;
3、保证线程安全的生成对象实例的方法或代码块;
由于在该模式下,类加载时不创建对象实例,故大对象或对象实例太多的场景下可以考虑使用该模式进行处理;
饿汉模式是在类加载的时候就创建了对象实例,在实际使用中直接将类加载时创建的对象实例返回;
该模式下有3个关键点:
1、私有构造函数;
2、静态获取对象实例的方法;
3、初始化对象实例;
由于在该模式下是在类加载的时候就创建了对象实例,写法简单明了,也没有线程问题,所以该模式应用的比较多,特别适合那种对象创建复杂且耗时的场景;
0 0
- 我的设计模式-单例(Singleton)
- 我的设计模式学习笔记------>单例模式(Singleton)
- 设计模式---单例模式(singleton)
- 设计模式--单例模式(Singleton)
- 设计模式--单例模式(Singleton)
- 设计模式-单例模式(Singleton)
- 【设计模式】-单例模式(Singleton)
- 设计模式---单例模式(singleton)
- 设计模式 -- 单例模式(Singleton)
- 设计模式:单例模式(Singleton)
- 设计模式:单例模式(Singleton)
- 设计模式:单例模式(Singleton)
- 设计模式:单例模式(Singleton)
- 设计模式:单例模式(Singleton)
- 设计模式-单例模式(Singleton)
- 【设计模式】单例模式(Singleton)
- 设计模式-单例(Singleton)模式
- 设计模式--单例模式(Singleton)
- java中获取当前操作系统的信息
- kinect 2.0:利用深度进行前景分割(c++实现)
- GDAL学习笔记——OGRLayer C++ API
- hiveserver2 CDH5.7.1
- 复杂指针声明
- 我的设计模式-单例(Singleton)
- 测试在discuz后台增加一个只能用admin用户打开的管理页面,仅显示aaa三个字母
- ES6 参数默认值语法
- 并查集的应用:hdu 1213
- 一些mysql的知识以及go语言操作mysql,mysqld服务
- CNN学习
- Elasticsearch
- Matlab学习笔记---find
- 非谓语动词doing作主语/宾语