常用设计模式总结--单立模式
2011-06-09 23:06
357 查看
单立模式,singleton
单立模式保证一个类只有一个实例,在java程序中,用static实现起来相对容易。
public class ItnpSearcherDaoFactory {
... ...
public static ItnpSearcherDaoFactory INSTANCE = new ItnpSearcherDaoFactory();
}
static在类载入的时候,就已经初始化了,所以只会出现一个INSTANCE。
这种方法,不是所有的都使用,有些实例可能在用的时候实例化更有效率,需要注意的是的这个Singleton采用的double-check锁,防止出现并发的问题。
关于double-check的锁,在以后的java并发编程的时候还是会提到,细节可以参考
http://en.wikipedia.org/wiki/Double-checked_locking
单立模式保证一个类只有一个实例,在java程序中,用static实现起来相对容易。
public class ItnpSearcherDaoFactory {
... ...
public static ItnpSearcherDaoFactory INSTANCE = new ItnpSearcherDaoFactory();
}
static在类载入的时候,就已经初始化了,所以只会出现一个INSTANCE。
这种方法,不是所有的都使用,有些实例可能在用的时候实例化更有效率,需要注意的是的这个Singleton采用的double-check锁,防止出现并发的问题。
package zl.study.designpattern.singleton; public class Singleton { public Singleton getSingleton(){ /** * double checked locking * http://en.wikipedia.org/wiki/Double-checked_locking */ if( null == _instance ){ synchronized(dumy){ if( null == _instance){ _instance = new Singleton(); } } } return _instance; } private Singleton _instance; private Object dumy = new Object(); }
关于double-check的锁,在以后的java并发编程的时候还是会提到,细节可以参考
http://en.wikipedia.org/wiki/Double-checked_locking
相关文章推荐
- 常用设计模式总结
- 软件开发常用设计模式—单例模式总结(c++版)
- 设计模式学习笔记七:常用设计模式原则总结
- java中常用设计模式总结
- 常用设计模式总结--抽象工厂
- 常用设计模式总结--代理模式
- Android开发 安卓中常用设计模式总结
- java面试总结——常用设计模式
- 常用23种设计模式总结,UML图、意图和适用性
- [转]Java中常用设计模式总结
- 常用设计模式总结--桥接模式
- 【设计模式总结】对常用设计模式的一些思考(未完待续。。。)
- Java常用的设计模式 他人的总结。
- Java中常用的设计模式总结
- 几个常用创建型设计模式总结
- Java中常用设计模式总结
- JAVA常用设计模式总结
- iOS中常用开发设计模式总结
- PHP常用的三种设计模式学习总结
- java常用设计模式总结