单例设计模式

2019-10-13  本文已影响0人  落在牛背上的鸟

单例设计模式

  1. 单例设计模式介绍
  2. 单例设计模式的八种方法
    2.1 饿汉式(静态常量)
    2.1.1 实现步骤
    2.1.2 代码实现
    2.1.3 优缺点分析
    2.2 饿汉式(静态代码块)
    2.1 代码实现
    2.2 优缺点分析
    2.3 懒汉式(线程不安全)
    2.3.1 代码实现
    2.3.2 优缺点分析
    2.4 懒汉式(线程安全,同步方法)
    2.4.1 代码实现
    2.4.2 优缺点分析
    2.5 略
    2.6 双重检查
    2.6.1 代码实现
    2.6.2 优缺点分析
    2.7 静态内部类
    2.7.1 代码实现
    2.7.2 优缺点分析
    2.8 枚举
    2.8.1 代码实现
    2.8.2 优缺点分析
    3 注意事项和细节说明
  3. 单例设计模式介绍

单例设计模式:就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。

  1. 单例设计模式的八种方法
  2. 饿汉式(静态常量)
  3. 饿汉式(静态代码块)
  4. 懒汉式(线程不安全)
  5. 懒汉式(线程安全,同步方法)
  6. 懒汉式(线程安全,同步代码块)
  7. 双重检查
  8. 静态内部类
  9. 枚举

2.1 饿汉式(静态常量)

2.1.1 实现步骤

  1. 构造器私有化(防止 new)
  2. 类的内部创建对象
  3. 向外暴露一个静态的公共方法:getInstance()

2.1.2 代码实现

/**

2.1.3 优缺点分析

[图片]

2.2 饿汉式(静态代码块)

2.1 代码实现

/**

2.2 优缺点分析

[图片]

2.3 懒汉式(线程不安全)

2.3.1 代码实现

/**

2.3.2 优缺点分析

[图片]

2.4 懒汉式(线程安全,同步方法)

2.4.1 代码实现

/**

2.4.2 优缺点分析

[图片]

2.5 略

2.6 双重检查

2.6.1 代码实现

/**

2.6.2 优缺点分析

[图片]

2.7 静态内部类

2.7.1 代码实现

/**

2.7.2 优缺点分析

[图片]

2.8 枚举

2.8.1 代码实现

/**

2.8.2 优缺点分析

[图片]

3 注意事项和细节说明

  1. 单例模式保证了系统内存中该类只存在一个对象,节省了系统资源,对于一些需要频繁创建销毁的对象,使用单例模式可以提高系统性能
  2. 当想实例化一个单例类的时候,必须要记住使用相应的获取对象的方法,而不是使用new
  3. 单例模式使用的场景:需要频繁的进行创建和销毁的对象、创建对象时耗时过多或耗费资源过多(即:重量级对象),但又经常用到的对象、工具类对象、频繁访问数据库或文件的对象(比如数据源、session工厂等)
上一篇 下一篇

猜你喜欢

热点阅读