Java

java中枚举如何实现单例模式

沐橙
584
2021-05-13 13:40:24
栏目: 编程语言

java中枚举实现单例模式的方法:可以使用单元素枚举类型实现,语法格式:“public enum Singleton {INSTANCE; private Singleton() {}}”,一般情况下枚举里面创建实例是线程安全的。

java中枚举如何实现单例模式

用法说明:

在功能上类似于 public 字段,它除了更简洁外,还自带序列化机制,并且即使面对复杂的序列化或反射攻击,也提供了针对多重实例化的明确保证。尽管这种方法尚未得到广泛采用,但是单元素枚举类型是实现单例模式的最佳方法。

使用实例:

public enum Elvis {

    INSTANCE;

    private final String[] favoriteSongs =

        { "Hound Dog", "Heartbreak Hotel" };

    public void printFavorites() {

        System.out.println(Arrays.toString(favoriteSongs));

    }

}

0
看了该问题的人还看了