单例设计模式
来源:互联网 发布:国家电网数据分析师 编辑:程序博客网 时间:2024/06/06 07:45
一. 单例设计模式:保证一个类对外只提供一个实例对象。
二. 好处:节约内存资源,提高性能。
三. 应用场景:
1. widows中的任务管理器;
2. 数据库连接池:避免数据库连接或者关闭引起的性能消耗。
3. 多线程连接池。
四.
实现方式:
publicclass SingleTon1 {
//饿汉式
//1.私有化一个该类的静态对象
privatestatic SingleTon1st=new SingleTon1();
//2.定义一个构造函数
private SingleTon1(){
}
//3.提供一个对外访问的方法
publicstatic SingleTon1getInstance(){
returnst;
}
}
public class SingleTon2 {
//懒汉式
private static SingleTon2 st=null;
private SingleTon2 (){};
public static synchronized SingleTon2getInstance(){
if(st==null){
st=newSingleTon2();
}
returnst;
}
}
//双重锁的判定
public class SingleTon3 {
private static SingleTon3 st=null;
private SingleTon3(){};
public static SingleTon3 getInstance(){
if(st==null){
synchronized(SingleTon3.class){
if(st==null){
st=newSingleTon3();
}
}
}
returnst;
}
}
五. 懒汉式和饿汉式的区别:
饿汉式:随着类的加载便实例化一个对象,浪费资源,在多线程方面是安全的;
懒汉式:只有调用的时候才实例化一个对象,节省资源,在多线程方面存在安全,需要加同步锁机制。
- 设计模式--单例
- 单例设计模式
- 设计模式----单例
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 设计模式-单例
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- springboot 使用缓存
- 关于多个页面同样内容的引入
- 论文中word2010下目录的生成及多级列表的设置
- 完数
- (c++)编写一个程序,输入a、b、c三个值,输出其中最大值。
- 单例设计模式
- 【嵌入式学习笔记二】烧录制作好的镜像到4412开发板中
- Hadoop YARN配置参数剖析(2)—权限与日志聚集相关参数
- Guice简明教程
- 记录一次升级系统内核导致openvpn无法启动
- 每天一点点
- Android 通知栏Notification的整合全面学习
- linux版本、查找、重启等命令
- Linux自定义Yum源全解析