您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在Java中实现单例模式的有效方法是什么?

在Java中实现单例模式的有效方法是什么?

使用一个枚举:

public enum Foo {
    INSTANCE;
}

约书亚·布洛赫(Joshua Bloch)在Google I / O 2008上的“有效的Java重新加载”演讲中解释了这种方法链接到视频。另请参见他的演示文稿的幻灯片30-32(effective_java_reloaded.pdf):

public enum Elvis {
    INSTANCE;
    private final String[] favoriteSongs =
        { "Hound Dog", "Heartbreak Hotel" };
    public void printFavorites() {
        System.out.println(Arrays.toString(favoriteSongs));
    }
}

“有效Java”在线部分说:

“该方法功能上等同于公共领域方法,除了它更简洁,免费提供序列化机制,甚至在面对复杂的序列化或反射攻击时也提供了防止多重实例化的坚强保证。尚未被广泛采用 。”

java 2022/1/1 18:15:55 有565人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶