例子来源于秦小波的《设计模式之禅》
1、饿汉式(不存在线程安全问题)
/**
* @author zhaojianbo
*/
public class ESingleton {
private static final ESingleton esingleton = new ESingleton();
private ESingleton() {
}
public static ESingleton getInstance() {
return esingleton;
}
}
2、饱汉式(存在线程安全、此例子以处理这个问题)
/**
* @author zhaojianbo
*/
public class LSingleton {
private static LSingleton lSingleton = null;
private LSingleton() {
}
public synchronized static LSingleton GetInstance() {
if (lSingleton == null) {
lSingleton = new LSingleton();
}
return lSingleton;
}
}