美文网首页
设计模式-四种单利模式

设计模式-四种单利模式

作者: 谢谢那些曾经丶 | 来源:发表于2018-05-05 22:40 被阅读0次
饿汉模式
image.png
  • 特点:不管你用还是不用,反正我帮你加载出来,并且不会有线程安全问题保证了只有一份实例。
懒汉模式(非线程安全)
image.png
  • 特点:实行了懒加载,只有在你使用的时候才会帮你加载,但是在多线程情况下会有线程安全问题。
懒汉模式(线程安全)
image.png
  • 特点:实行了懒加载,并且线程安全
  • 注意:这里的double check是比较经典的,但是需要注意一定要使用volatile修饰实例的引用,因为如果你不用volatile修饰,当你的构造函数里去初始化一些比较重的内容时,恰好另外一个线程拿着你未初始化完全的实例去调用,从而会导致空指针异常,但是使用volatile可以有效的避免这一点。
静态内部类的形式
image.png
  • 特点:即实行了懒加载,线程安全,并且不需要加锁,代码非常优雅。
枚举的形式
image.png
  • 特点:在枚举中我们明确了构造方法限制为私有,在我们访问枚举实例时会执行构造方法,同时每个枚举实例都是static final类型的,也就表明只能被实例化一次,巧妙的使用的枚举实现单利(Effective java最推荐的一种)

相关文章

  • JavaJavascript基础进阶(十七)JS中常用的设计模式

    单利设计模式、构造原型设计模式、发布订阅设计模式、promise设计模式 单利模式 构造原型设计模式 最贴近OOP...

  • 设计模式-四种单利模式

    饿汉模式 特点:不管你用还是不用,反正我帮你加载出来,并且不会有线程安全问题保证了只有一份实例。 懒汉模式(非线程...

  • 2018-05-14

    单利设计模式 懒汉式 单例模式 饿汉式 单利模式 懒汉式与饿汉式的区别: 双重锁式 单例模式 (DCL )

  • 单利设计模式

    单利模式的介绍 单利模式是应用最广的模式之一,也可能是很多初级工程师唯一会使用的设计模式。在应用这个模式时,单利对...

  • 细品 javascript 设计模式(单利模式)

    我尽量用最少的文字,最少的篇幅,讲明白设计模式的方方面面。文章连接 理解单利模式 上代码:通用的惰性单利模式 单利...

  • 设计模式---单利

    public class Text02 {public static void main(String[] arg...

  • 设计模式

    设计模式的分类 创建型模式(5种) 工厂方法模式、抽象工厂模式、单利模式、构建者模式、原型模式。 结构型模式(7种...

  • 1,设计模式-策略模式

    设计模式分类1,创建型模式,共5种:工厂方法模式,抽象工厂模式,单利模式,建造者模式,原型模式。2,结构型模式,共...

  • 创建型设计模式

    1,创建型设计模式有四种:1,单例模式。2,工厂模式。3,建造者模式。4,原型模式。 2,四种设计模式的应用场景:...

  • 设计模式

    单利模式 代理模式 工厂模式 装饰者模式:

网友评论

      本文标题:设计模式-四种单利模式

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