java singleton design pattern

2014-11-24 11:52:20 · 作者: · 浏览: 8

public class Singleton{

private static Singleton instance = null;
private Singleton() { }
private static synchronized void syncInit() {
if (instance == null) {
instance = new Singleton();
}
}
public static Singleton getInstance() {
if (instance == null) {
syncInit();
}
return instance;
}
}
应用:
通俗讲:单例模式一般在,只想要有一个东西,不可添加的时候我们用到它,例如: QQ聊天,只打开一个对话框不管点击多少次该好友还是一个窗口
第一、控制资源的使用,通过线程同步来控制资源的并发访问;
第二、控制实例产生的数量,达到节约资源的目的。
第三、作为通信媒介使用,也就是数据共享,它可以在不建立直接关联的条件下,让多个不相关的两个线程或者进程之间实现通信。
比如, 数据库连接池的设计一般采用单例模式,数据库连接是一种数据库资源