枚举类实现线程安全
单例模式:
单例模式是常用的设计模式,作用是确保某个类只有一个实例吗,自行实例化并向整个系统提供这个实例。线程池、缓存、日志对象、对话框对象等常被设计成单例,选择单例模式是为了避免不一致的状态
简单的实现可参考 单例模式
但是这样实现仍然存在缺点:序列化可能会破坏单例模式,每次反序列化一个序列化的对象实例时都会创建一个新的实例
可以使用枚举来实现,如下
public enum SingletonEnum {
INSTANCE;
private String name;
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
}
直接使用SingletonEnum.INSTANCE来进行访问,不用考虑序列化和反射的问题。
浙公网安备 33010602011771号