两种单例模式
第一种,构建类时,初始化对象
代码:
class Single{
private static Single s=new Single();
private Single(){}
public static Single getInstance()
{
return s;
}
}
第二种,延迟构造考虑到多线程和效率问题。
代码:
class Single{
private static Single s=null;
private Single(){}
public Single getInstance()
{
if(s==null)
{
synchronized (Single.class)
{
if(s==null)
{
s=new Single();
}
}
}
return s;
}
}
不作详述