美文网首页
单列模式

单列模式

作者: 小动乾坤 | 来源:发表于2024-02-27 18:15 被阅读0次
    单列模式思维导图

    定义:在运行时数据区里面,指定类A的实列对象有且只能有一个

    提示:饿汉式和懒汉式的区分标准:目标类A要设计为单列,类A加载的时候实列对象就创建了,饿汉式,需要类A进行相应的方法调用才才创建对象,懒汉式

    饿汉式:类加载时创建实列对象

    静态代码块写法

    组合静态成员变量写法

    优点:通过类加载过程规避并发问题

    缺点:类加载和类的对象使用并不是绑定在一起的,类加载的时候初始化实列对象,后续如果用不上,本质就是出现了内存内存泄漏问题

    懒汉式:实列获取方法调用时才有机会触发对象的创建过程

    线程安全的写法但推荐使用的写法

    双重检查写法 静态内部类写法

    静态内部类写法代码特征:

    1.单列目标类A构造方法私有化

    2.类A内嵌一个类B,B静态组合类A

    3.类A提供方法,这个方法直接访问类B静态组合的成员变量A的实列对象

    类A加载时单列对象未实列化,类A方法调用时触发内部类B加载,B加载规避并发问题并初始化实列对象

    枚举:还能防止反序列化重新创建新的对象

    线程安全但不推荐使用的写法

    同步方法-并发吞吐量不优秀

    非线程安全的写法只能单线程下使用

    暴力判断对象是否创建过,没有创建的话创建并返回,不做任何并发处理

    相关文章

      网友评论

          本文标题:单列模式

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