226_尚学堂_高淇_java300集最全视频教程_【GOF23设计模式】_单例模式_应用场景_饿汉式_懒汉式

GOF23:group of four 23-四人帮的23种模式
- 创建型模式
  单例模式、工厂模式、抽象工厂模式、建造者模式、原型模式
- 结构型模式
  适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式
- 行为型模式
  模板方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式、访问者模式

单例模式:一个类只有一个对象(实例),并且提供一个访问该唯一实例的全局访问点。
226_尚学堂_高淇_java300集最全视频教程_【GOF23设计模式】_单例模式_应用场景_饿汉式_懒汉式_第1张图片

优点:只有一个实例,减少系统开销。
常见的五种单例模式实现方式:
主要:
1、饿汉式(线程安全,调用效率高,但是不能延时加载)
2、懒汉式(线程安全,调用效率不高,但是可以延时加载)
其他:
1、双重检测锁式(由于JVM内部模型的原因,偶尔会出问题)
2、静态内部类式(线程安全,效率高,有延时)
3、枚举式(线程安全,效率高,无延时,能天然放着反射和反序列化漏洞)

实际使用:
1、单例对象,占用资源少,不需要延时加载
  枚举式由于饿汉式
2、单例对象,占用资源多,需要延时加载
  静态内部类式由于懒汉式

你可能感兴趣的:(尚学堂Java300集学习笔记)