单例模式网上有6-7中写法,除了 枚举方式外, 都有两个致命的缺点, 不能完全保证单例在jvm中保持唯一性....反射创建单例对象
解决方案 : 在构造上述中判断,当多于一个实例时,再调用构造函数,直接报错.
反序列化时创建对象
解决方案 : 使用readResolve()方法来避免此事发生.......
}
}
所以,枚举实现的单例,可以说是最完美和简洁的单例了.推荐大家使用这种方式创建单例....它的实现比其他方式需要更多的内存空间,所以在Android这种受资源约束的设备中尽量避免使用枚举单例,而选择 双重检查锁(DCL)和静态内部类的方式实现单例....单个枚举类型常量,比static final声明的常量占用的内存大的多.
因此,不建议在Android中使用枚举常量,而更偏向于使用 static final来定义常量.