`
bmqnc
  • 浏览: 122448 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java中的enum类型与单态设计模式

    博客分类:
  • java
阅读更多
单态设计模式有三种做法:
1.声明公有实例为public
2.公有实例为private,对外提供public的方法返回实例。这包括懒加载与勤加载。
3.利用1.5中引入的ENUM类型。

这三种中,最好的是用enum类型,因为前两种不能抵御反射攻击(也能做到,但是是要在实例第二个对象的时候抛出异常),并且对象序列化上还要自己做一些额外的工作,而enum天生是抵御反射攻击,并且在序列化上是不用自己再做额外的工作,这一点用起来很方便。

Enum其实也是一个类,它能支持singleton的原因是它自动的将它的构造函数做成是private的。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics