枚举

枚举应用实例

代码演示

package com.atguigu.principle.singleton.type08;

/**
 */
public class SingletonTest08 {

    public static void main(String[] args) {
        Singleton instance = Singleton.INSTANCE;
        Singleton instance2 = Singleton.INSTANCE;
        System.out.println(instance == instance2);
        System.out.println(instance.hashCode());
        System.out.println(instance2.hashCode());

        instance.sayOK();
    }

}

// 使用枚举 ,可以实现单例, 推荐使用
enum Singleton{
    INSTANCE;
    public void sayOK() {
        System.out.println("ok~");
    }
}

优缺点说明:

  1. 这借助jdk1.5天假的枚举来实现单例模式. 不仅能够避免多线程同步问题,而且还能够防止反序列化重新创建新的对象

  2. 这种方式 是 Effective Java 作者 Josh Bloch 提倡的方式

  3. 结论: 推荐使用

更多

参考:你知道吗?枚举单例模式是世界上最好的单例模式!!!

天马行空

如果不考虑前轮打滑,前驱是最好的驱动形式

如果不考虑钢带打滑,CVT是最好的变速箱


results matching ""

    No results matching ""