美文网首页从零学Java笔录凯哥Java-工作总结
单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

作者: 凯哥Java | 来源:发表于2019-08-22 09:18 被阅读2次

设计模式之单例模式-单例模式的几种实现方式及小案例

本文出处:凯哥Java(wx:kaigejava)

单例模式有几种?饿汉式、懒汉式。这两种是最常见的。还有几种是对其扩展的。具体如下:

我们可以从上图看到,共有六种方式。

其中在懒汉式基础上扩展的有两种。即:加锁的懒汉式及双重判断加锁的懒汉式

还有一种是使用内部类实现的。即:内部静态类的

最后一种是比较少见的。使用枚举的。

我们来看看每种方式代码都怎么写。

懒汉式:

我们来看看懒汉式优缺点:

饿汉式:

饿汉式的优缺点及适用场景:

加锁的懒汉式:

再来看看加锁懒汉式的由来:

双重判断加锁的懒汉式:

有了加锁的懒汉为什么还会有加锁双重判断的呢?这种由什么优缺点呢?请看下图:

内部静态类是实现的懒汉式:

这种模式的有缺:

使用枚举:

优点缺点:

我们使用单例模式做个小案例。

本文来源:凯哥Java

公众号:kaigejava

个人博客:www.kaigejava.com

相关文章

  • 单例模式

    单例,全局只有一个实例 单例模式可以分为懒汉式和饿汉式: 懒汉式单例模式:在类加载时不初始化。 饿汉式单例模式:在...

  • 单例模式Java篇

    单例设计模式- 饿汉式 单例设计模式 - 懒汉式 单例设计模式 - 懒汉式 - 多线程并发 单例设计模式 - 懒汉...

  • 单例模式的理解

    单例设计模式: 单例模式分为懒汉式和饿汉式。下面分别介绍懒汉式和饿汉式的几种写法。 饿汉式第一种(jdk1.5之前...

  • Singleton 单例模式

    饿汉式单例模式 饿汉式单例模式 通过静态代码块增加异常处理 懒汉式单例模式 存在线程安全问题 懒汉式单例模式 解决...

  • 单例(Singleton)

    单例设计模式 单例模式的创建 饿汉式1 饿汉式2 懒汉式 优化后的懒汉式(线程安全): 饿汉式与懒汉式区别 单例模...

  • 2018-05-14

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

  • 单例模式

    常见的单例模式有哪几种 最常见的有四种,饿汉式、双重检测懒汉式、静态内部类、枚举 饿汉式单例模式是什么 饿汉式单例...

  • 第3章 创建型模式-单例模式

    ■ 饿汉式单例类 ■ 懒汉式单例类 ■ 单例模式的实例

  • 求职字节跳动!一道简单的Java单例模式问题,问完我懵逼了...

    1.场景: 面试官:有用过单例模式吗?我:有有有(自信满满)。面试官:说说单例模式几种写法?我:懒汉式和饿汉式,懒...

  • java 24 设计模式

    单例模式java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例、...

网友评论

    本文标题:单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

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