下面是我写的单例设计模式:
class single
{
private static single s = null ;
private single(){}
Object obj = new Object();
public static single getInstance()
{
if(s == null){
synchronized(single.class)
{
if(s == null)
s = new single();
}
}
return s ;
}
}
代码分析:
此类中已经声明了本类对象s,并且s=null。
所以在外界在调用getInstance()新建对象的时候,如果判断s==null,那么就可以建立新的对象,并传引用给s。
否则s!=null,说明s的引用不为空,也就是内存中已经存在single对象,所以就不能新建对象了。