软设之享元模式

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

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

内容

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

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

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

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

Ckient:客户应用程序。

相关推荐
dreams_dream5 分钟前
Docker 服务名总结笔记(超清晰版)
笔记·docker·容器
千逐681 小时前
《鸿蒙备忘录:基于 Flutter for OpenHarmony 的极简本地笔记应用全实现》
笔记·flutter·harmonyos
冷雨夜中漫步8 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
Gain_chance10 小时前
34-学习笔记尚硅谷数仓搭建-DWS层最近一日汇总表建表语句汇总
数据仓库·hive·笔记·学习·datagrip
Gain_chance12 小时前
36-学习笔记尚硅谷数仓搭建-DWS层数据装载脚本
大数据·数据仓库·笔记·学习
肖永威12 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
暗光之痕12 小时前
Unreal5研究笔记 Actor的生命周期函数
笔记·unreal engine
Gain_chance13 小时前
35-学习笔记尚硅谷数仓搭建-DWS层最近n日汇总表及历史至今汇总表建表语句
数据库·数据仓库·hive·笔记·学习
宵时待雨13 小时前
STM32笔记归纳9:定时器
笔记·stm32·单片机·嵌入式硬件
m0_7190841114 小时前
React笔记张天禹
前端·笔记·react.js