首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhix
V2EX  ›  Java

基于 enum 的单例模式是不是一种反模式?

  •  
  •   zhix · 2017-10-16 18:20:58 +08:00 · 2090 次点击
    这是一个创建于 833 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我一般习惯用 enum 来实现单例

    enum Singleon {
    	
        INSTANCE;
    }
    

    同样会使用 enum 来实现工具类

    enum Utils {
    
    	;
    }
    

    这样做算不算一种反模式?

    5 回复  |  直到 2017-10-19 17:42:22 +08:00
    johnniang
        1
    johnniang   2017-10-16 18:24:38 +08:00 via Android
    你应该去反编译一下代码看看 enum 的真身
    zonghua
        2
    zonghua   2017-10-16 20:22:35 +08:00 via iPhone
    枚举没了面向对象的一些特性
    flyingghost
        3
    flyingghost   2017-10-16 20:32:52 +08:00
    无论技术上可不可行,我觉得和设计初衷、和字面意思、和直觉相违背的 geek 用法都是以可读性 /可维护性为代价的奇技淫巧。
    yidinghe
        5
    yidinghe   2017-10-19 17:42:22 +08:00
    反正 enum 不是这么用的,所以是反模式。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2166 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 22ms · UTC 04:03 · PVG 12:03 · LAX 20:03 · JFK 23:03
    ♥ Do have faith in what you're doing.