单件模式,在平常的开发中,经常都会用到。
下面给出两种不同的实现,其实他们的区别在于第一种可以实现延时加载(惰性加载),第二种则不行,因为static变量在编译时就要赋初值。
public class single //其中一种实现方式。
{
private static single instance=null;
private static int single_num=0;
private static void single()
{
single_num++;
System.out.println("这是第:"+single_num+"个对象");
}
public static single get_single()
{
if(instance==null)
{
instance=new single();
}
return instance;
}
public static void main(String args[])
{
}
}
第二种实现。
public class singleton //另外一种实现方法。
{
private singleton()
{
singleton_num++;
System.out.println("这是构造函数,初始化第"+singleton_num+"个对象");
}
private static singleton instance=new singleton();
private static int singleton_num=0;
public singleton get_sinleton()
{
return instance;
}
public static void main(String args[])
{
}
}