美文网首页
单例(枚举)

单例(枚举)

作者: Shaw_Young | 来源:发表于2020-10-11 16:33 被阅读0次
package com.young.singleton.type8;

/**
 * @author Shaw_Young
 * @date 2020/9/3 18:39
 */
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();
        instance2.sayOk();
    }

}

/**
 * 使用枚举,可以实现单例,推荐使用
 */
enum Singleton {
    //属性
    INSTANCE;

    public void sayOk() {
        System.out.println("ok~");
    }
}

优缺点说明:

  1. 这借助JDK1.5中添加的枚举来实现单例模式。不仅能避免多线程同步问题,而且还能防止反序列化重新创建新的对象。
  2. 这种方式是Effective Java作者Josh Bloch提倡的方式。
  3. 结论: 推荐使用 。

相关文章

  • 枚举单例

    描述 本文先反编译枚举,再使用枚举实现单例 枚举 单例 单例源码 单例反编译 引用 http://www.benf...

  • 单例模式之枚举类enum

    通过枚举实现单例模式 枚举类实现单例模式的优点 对于饿汉式单例模式和懒汉式单例模式了解的同学,使用以上两种单例模式...

  • 单例模式(Singleton)

    单例模式(Singleton) 枚举单例 public enum Singleton { INSTANCE; ...

  • 枚举单例——避免反序列化破坏单例

    六种单例模式实现 枚举单例 深度解析单例与序列化

  • Java-Eunm equals

    枚举对象.equals(枚举对象)是可以的。因为枚举类是单例。

  • C05 单例模式 Enum枚举单例(一) 抗序列化攻击分析

    枚举单例的抗序列化攻击演示(一) 输出: INSTANCEINSTANCEtrue 枚举单例的抗序列化攻击演示(二...

  • 单例模式

    饿汉模式: 懒汉模式: Double CheckLock(DCL)实现单例 静态内部类实现单例 枚举单例 使用容器...

  • java 枚举

    枚举 注意:枚举是单例的,单例要保证私有化构造器。 1. 如何自定义枚举类 提供类的属性,声明为 private ...

  • 单例(枚举)

    优缺点说明: 这借助JDK1.5中添加的枚举来实现单例模式。不仅能避免多线程同步问题,而且还能防止反序列化重新创建...

  • 单例模式(Java内部类加载顺序)

    你真的会写单例模式吗——Java实现Android设计模式源码解析之单例模式深度分析 Java 的枚举类型:枚举的...

网友评论

      本文标题:单例(枚举)

      本文链接:https://www.haomeiwen.com/subject/lauosktx.html