23种设计模式-享元(Flyweight)设计模式

文章目录

  • 一.什么是享元设计模式?
  • 二.享元模式的特点
  • 三.享元模式的结构
  • 四.享元模式的优缺点
  • 五.享元模式的 C++ 实现
  • 六.享元模式的 JAVA 实现
  • 七.代码解析
  • 八.总结

类图: 享元设计模式类图

一.什么是享元设计模式?

享元(Flyweight)设计模式是一种结构型设计模式,通过共享对象来减少内存占用和对象创建开销。它通过将对象的可共享部分不可共享部分分离,减少重复对象的数量,从而节省内存。

 享元模式的核心思想是共享对象状态,在需要大量相似对象时,仅存储少量可复用的对象,其他状态通过外部管理。

二.享元模式的特点

  1. 共享性:通过共享相同状态的对象,降低内存占用。
  2. 分离状态
    • 内部状态:对象内部不变的部分,可共享。
    • 外部状态:对象动态变化的部分,由客户端负责管理。

三.享元模式的结构

  • Flyweight(抽象享元类)

你可能感兴趣的:(软考中级-软件设计师,设计模式,享元模式,软考,软件设计师,C++,行为型设计模式,JAVA)