单例模式(八)—单例模式总结

2022-07-24  本文已影响0人  奔跑的佩恩

前言

在之前的文章,我们已经讲过了单例模式的各种实现,大家有兴趣的可参考以下文章:
单例模式(一)—懒汉模式
单例模式(二)—懒汉模式(线程安全模式)
单例模式(三)—饿汉模式
单例模式(四)—懒汉双锁模式
单例模式(五)—饿汉静态块模式
单例模式(六)—静态内部类模式
单例模式(七)—枚举模式
今天让我们对单例模式的各种实现方式做一个总结, 涉及内容有:

  1. 单例模式实现的方式种类
  2. 单例模式各种方式实现的共性
  3. 各种实现方式对比

一. 单例模式实现的方式种类

我们实现单例模式的方式总体来说有七种,分别是两种饿汉模式,三种懒汉模式,一种静态内部类方式和一种枚举实现方式,具体如下:

二. 单例模式各种方式实现的共性

单例模式各种实现方式有以下共性:

  1. 都要写private无参构造函数
  2. 都要提供一个获取该类对象的方法
  3. 都会涉及到内存占用与线程安全的问题

三. 各种实现方式对比

单例模式实现方式 延迟加载 线程安全 性能 实现难度
懒汉模式 一般 一般
懒汉同步锁模式 一般
懒汉双锁同步+Volatile 模式 一般
饿汉模式 一般 一般
饿汉静态块模式 一般 一般
静态内部类模式 一般 一般
枚举模式 一般

ok, 今天关于单例模式各种实现方式的对比与总结就介绍到这里了,谢谢大家。

上一篇下一篇

猜你喜欢

热点阅读