二十三种设计模式之一单例模式
来源:互联网 发布:在html中引入js文件 编辑:程序博客网 时间:2024/05/20 02:52
单例模式定义: Ensure a class has only one instance ,and provide a global point pf access to it( 确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例)
优点:1
- 内存只有一个实例 !减少内存开支特别对于频繁的创建和销毁而且又无法优化
- 减少系统性能开销
- 避免多重占用
- 可以设置全局访问点优化和共享资源
缺点
- 扩展难
- 对测试不利
- 与单一职责有冲突
使用环境:
- 要求生成唯一序列号的环境
- 再整个项目中需要一个共享访问点或共享数据
- 创建一个对象需要消耗的资源过多 如果要访问IO和数据库等资源
- 需要定义大量的静态常量和静态方法
代码结构:
第一种通用的:
public class Singleton {private static final Singleton SINGLETON = new Singleton();//限制产生多个对象private Singleton(){}// 通过该方法获得实例对象private static Singleton getSingleton(){return SINGLETON;}// 类中的方法,尽量是staticpublic static void doSomeThing(){}}
第二种线程不安全的
public class Singleton {private static Singleton SINGLETON = null;//限制产生多个对象private Singleton(){}// 通过该方法获得实例对象private static Singleton getSingleton(){if(SINGLETON==null){SINGLETON= new Singleton();}return SINGLETON;}// 类中的方法,尽量是staticpublic static void doSomeThing(){}}注: 自己记录读设计之禅的笔记
0 0
- 二十三种设计模式之一单例模式
- 二十三种设计模式之一单例模式
- 二十三种设计模式之单例模式
- 二、设计模式之一-----单例模式
- 博客专栏:二十三种设计模式之单例模式
- java中的二十三种设计模式之1---单例模式
- [设计模式]二十三种设计模式
- 二十三种设计模式
- 二十三种设计模式
- 二十三种设计模式
- 二十三种设计模式
- 二十三种设计模式
- 二十三种设计模式
- 二十三种设计模式
- 设计模式之一 :单例设计模式
- 设计模式之一 单例设计模式
- 设计模式之一 单例设计模式
- 二十三种设计模式之创建型模式之单态模式
- Intellij idea : could not create the java virtual machine
- 忽略SAP Solution Manager Key
- 音乐类软件LoveMusic开发(一)----产品简介
- 在没有微信在没有微信 转载
- Java--基础--字符串中提取数字
- 二十三种设计模式之一单例模式
- 项目的过程中的时间节点管理
- Java基础第一天
- SQL Case when 的使用方法
- OJ刷题之武功秘籍
- jQuery常用选择器介绍
- 浏览器表现模式(Standards Mode与Quirks mode)
- 感觉自己总是写代码,看代码,解决问题,却从未总结过,从今天起开始总结
- Bhattacharyya距离