软设之备忘录模式

设计模式中备忘录模式的意图是:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,从而可以将该对象恢复到原先状态。

打个比方,在游戏中创建一个角色,在游戏过程中保存这个角色的生命值,魔法值,位置等属性,游戏保存就是备忘录模式。在读取这个存档会回到原来的状态。

Memento:备忘录对象,保持Orignator的内部状态,根据原发器来决定保存到那个状态。

Originator:原发器,通常是需要备忘的对象自己,创建一个备忘录,记录它的当前内部状态,可以利用一个备忘录来恢复它的内部状态。

CareTake:备忘录管理者,只负责看管备忘录,不可以对备忘录的内容操作或者检查。

相关推荐
千千寰宇14 小时前
[设计模式/Java/多线程] 设计模式之单例模式【9】
设计模式·操作系统-进程/线程/并发
此木|西贝20 小时前
【设计模式】原型模式
java·设计模式·原型模式
吴梓穆1 天前
UE5学习笔记 FPS游戏制作38 继承标准UI
笔记·学习·ue5
V---scwantop---信1 天前
英文字体:大胆都市街头Y2Y涂鸦风格品牌海报专辑封面服装字体 Chrome TM – Graffiti Font
笔记·字体
Moonnnn.1 天前
运算放大器(四)滤波电路(滤波器)
笔记·学习·硬件工程
吴梓穆1 天前
UE5学习笔记 FPS游戏制作37 蓝图函数库 自己定义公共方法
笔记·学习·ue5
吴梓穆1 天前
UE5学习笔记 FPS游戏制作41 世界模式显示UI
笔记·学习·ue5
s_little_monster1 天前
【Linux】进程信号的捕捉处理
linux·运维·服务器·经验分享·笔记·学习·学习方法
RedMery1 天前
论文阅读笔记:Denoising Diffusion Implicit Models (4)
论文阅读·笔记
go_bai1 天前
Linux环境基础开发工具——(2)vim
linux·开发语言·经验分享·笔记·vim·学习方法