单例模式(饿汉式与懒汉式)

单例模式

一个类在内存只存在一个对象

饿汉式:
Single类一进内存就初始化了

private Single(){}
private static Single s = new Single();
public static Single getInstance(){
return s;
}

  

懒汉式:
Single类进内存,对象还没存在,只有调用了getInstance()方法时候,才会创建对象
懒汉式bug解决:双重判断

if(s==null)
{
synchronized(Single.class){
if(s==null)
s = new Single();
}
}

  

原则:
定义单例时,建议使用饿汉式。

posted @ 2014-07-17 16:38  Nophy  阅读(213)  评论(0)    收藏  举报