java中如何让一个类只能实例一次
展开全部
可以简单的实现一个单例模式,例如:
public class Singleton {
private static Singleton uniqueInstance = new Singleton();
private Singleton(){}
public static Singleton getInstance() {
return uniqueInstance;
}
}
这里Singleton类的构造方法私有化,故无法随意构建该类的实例,只能通过公共的getInstance方法来获得该类的实例,该方法返回的是静态的成员变量uniqueInstance,静态成员变量在内存中是仅有一份的,或者说是被共享的,从而保证了该类仅有一个实例。即对于该类的任意两个引用Singleton s1; Singleton s2; 只要不为null, s1==s2必定为true。
public class Singleton {
private static Singleton uniqueInstance = new Singleton();
private Singleton(){}
public static Singleton getInstance() {
return uniqueInstance;
}
}
这里Singleton类的构造方法私有化,故无法随意构建该类的实例,只能通过公共的getInstance方法来获得该类的实例,该方法返回的是静态的成员变量uniqueInstance,静态成员变量在内存中是仅有一份的,或者说是被共享的,从而保证了该类仅有一个实例。即对于该类的任意两个引用Singleton s1; Singleton s2; 只要不为null, s1==s2必定为true。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询