软设之享元模式

享元模式的意图是:提供大量细粒度对象共享的有效方法。

比如说,设计一个战争游戏,需要设计许多士兵。士兵都是一个模板出来的,如果一个士兵一个士兵新建,就会浪费内存空间,但是用享元模式,只需要建立士兵共同的模块对象,新建一个士兵就共享这些模块对象就可以了。

内容

Flyweight:抽象轻量级类,声明一个接口。通过它可以接受外来的状态并作出处理。

ConcreteFlyweight:具体轻量级类,实现Flyweight接口。

UnsharedConcreteFlyweight:不共享都轻量级类,这类对象常常将ConcreteFlyweight作为子节点。

FlyweightFactory:轻量级类工厂,创建并且管理flyweight对象确保享用flyweight

Ckient:客户应用程序。

相关推荐
hanlin0311 小时前
刷题笔记:力扣第84题-柱状图中最大的矩形
笔记·算法·leetcode
一米阳光866119 小时前
软考高级【信息系统项目管理师】高项重要考点(3)高级项目管理-下 助你顺利上岸!
笔记·职场发展·软考·信息系统项目管理师·高级职称
dianziyao_20 小时前
第 4.1 篇:让 Codex 理解你的双链——AI 辅助发现笔记间的关联
人工智能·笔记
xian_wwq1 天前
【学习笔记】OWASP Agentic 应用安全(二)
笔记·学习·安全·owasp
沪上企服通1 天前
代账数据的可移植性设计:开放接口、账套导出与 exit strategy 工程笔记(上海 5 家样本对照)
笔记·策略模式
江湖人称菠萝包1 天前
【Windows】《深入浅出Windows API程序设计:编程基础篇》笔记-Chapter8-子窗口控件
windows·笔记
M78佐菲1 天前
HTML学习笔记
linux·笔记·学习·tcp/ip·html
码匠许师傅1 天前
【设计模式精讲】26.策略模式(Strategy)
c++·设计模式·策略模式·uml
我还可以再学点1 天前
QUIC学习笔记
笔记·学习
点心的游戏开发世界1 天前
GDScript 入门笔记:目录
开发语言·笔记·游戏引擎·godot