出来这样的效果,叫做单列模式。
你可以参考一下的下面的笔记:单例模式(Singleton):
保证程序永远能获得同一个Java对象。
示例一: ----- 称饿汉式 :
开始就急着创建对象,所以称为俄汉式
class A{
private static A a = new A();
private A(){
//使用private访问控制符来让外界不能new该对象;只能调用静态方法来获取。
//这样方可实现外界永远获得的是同一个Java对象。
}
public static A getInstance()
{
return a;
}
}
示例二: ---- 称懒汉式 :
开始不创建对象,等到用的时候才创建,行为有点懒;所以称为俄汉式。
class A{
private static A a=null;
private A(){ }
public synchronized static A getInstance()
{ if(a == null){ a = new A(); }
return a;
}
}
设计一个类,该类只能生成3个实例,java实现
public class ClassicSingleton {
private static List instanceList = new ArrayList();
protected ClassicSingleton() {
// Exists only to defeat instantiation.
}
public static ClassicSingleton getInstance() {
if(instanceList.size() < 3) {
ClassicSingleton c = new ClassicSingleton();
instanceList.add(c); return c;
}
return instanceList.get(0);
}
}