Java设计模式之单例设计模式
2015-06-01 16:47
288 查看
Java单例设计模式,有多种实现方式,下面介绍一下比较著名的一些实现方式
饿汉式
这种设计模式简单,且没有多线程安全问题,一般实际开发时选用这种方式。
这种模式,会延迟加载,效率较高。
这种设计模式较为复杂,存在多线程安全问题。可以用同步函数或同步代码块,为了避免每次都要
判断锁,采用同步代码块加双重判断的方式来解决线程安全问题。注意锁应该是该类的字节码文件
饿汉式
这种设计模式简单,且没有多线程安全问题,一般实际开发时选用这种方式。
class HungeryDemo { private HungeryDemo(){} private static final HungeryDemo instance = new HungeryDemo(); public static HungeryDemo getInstance() { return instance; } }2.懒汉式
这种模式,会延迟加载,效率较高。
这种设计模式较为复杂,存在多线程安全问题。可以用同步函数或同步代码块,为了避免每次都要
判断锁,采用同步代码块加双重判断的方式来解决线程安全问题。注意锁应该是该类的字节码文件
class LazyDemo { private LazyDemo(){} private static LazyDemo instance = null; public static LazyDemo getInstance() { if(instance==null) { synchronized(LazyDemo.class) { if(instance==null) { instance = new LazyDemo(); } } } return instance; } }
相关文章推荐
- 从赵本山的小品联想到的Java设计模式
- JAVA设计模式学习第三天 设计模式之Chain of Responsibility——项目篇
- 学习:java设计模式—工厂模式
- 设计模式----简单工厂模式
- Java设计模式 创建模式-工厂模式(Factory)
- Java设计模式 创建模式-原型模式(Prototype)
- Java设计模式 创建模式-生成器模式(Builder)
- Java设计模式 创建模式-单态模式(Singleton)
- Java设计模式 结构模式-适配器模式(Adapter)
- 设计模式-创建型:单例模式(1)
- java设计模式(二):2.1责任链(简单一条链)
- java 设计模式有趣见解
- 黑马程序员————java设计模式之单例模式一
- Java 观察者模式
- 利用Happen-Before规则分析DCL
- java设计模式之抽象工厂模式
- 抽象工厂模式浅谈
- 生成器模式浅谈
- 简单工厂模式浅谈
- 工厂方法模式