单实例模式是java常用的设计模式,目的是保证各个引用的都是同一个对象。
例如系统的回收站只有一个,每一个引用的地方都只用引用已经创建出来的实例。
以下是单实例模式的实现和测试代码:
class TestClass
{
private static TestClass instance;
private int num = 0;
public static TestClass getInstance()
{
if (null == instance)
{
instance = new TestClass();
}
return instance;
}
public int getNum()
{
return this.num;
}
public void setNum(int aNum)
{
this.num = aNum;
}
}
public class SingleInstance {
/**
* @param args
*/
public static void main(String[] args)
{
TestClass Instance_1 = TestClass.getInstance();
System.out.println("num = " + Instance_1.getNum());
Instance_1.setNum(10);
System.out.println("num = " + Instance_1.getNum());
TestClass Instance_2 = TestClass.getInstance();
System.out.println("num = " + Instance_2.getNum());
Instance_2.setNum(20);
System.out.println("num = " + Instance_2.getNum());
TestClass Instance_3 = TestClass.getInstance();
System.out.println("num = " + Instance_3.getNum());
Instance_3.setNum(30);
System.out.println("num = " + Instance_3.getNum());
}
}
控制台输出结果:
num = 0
num = 10
num = 10
num = 20
num = 20
num = 30