单例模式:一个类只产生一个对象
public class SingletonTest
{public static void main(String [] args)
{
SingletonClass c = SingletonClass.getInstance();
SingletonClass c2 = SingletonClass.getInstance();
System.out.println(c==c2);
LazySingletonClass l = LazySingletonClass.getInstance();
LazySingletonClass l2 = LazySingletonClass.getInstance();
System.out.println(l==l2);
}
}
class SingletonClass
{
private SingletonClass(){}
private static SingletonClass instance = new SingletonClass();
public static SingletonClass getInstance()
{
return instance;
}
}
//懒汉模式
class LazySingletonClass
{
private LazySingletonClass(){}
private static LazySingletonClass instance = null;
public static LazySingletonClass getInstance()
{
if(instance == null)
{
instance = new LazySingletonClass();
return instance;
}
else
{
return instance;
}
}
}
输出结果: true
true