当前位置: 首页 > news >正文

备忘录模式 (Memento Pattern)

备忘录模式(Memento Pattern)是一种行为型设计模式。它允许在不破坏对象封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便在将来的某个时刻可以将对象恢复到先前保存的状态。

一、基础

1. 意图

核心目的:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便以后可以恢复到原先保存的状态。

2. 使用场景

典型应用

  • 需要保存对象状态快照以便回滚
  • 需要实现撤销/重做功能
  • 需要保存对象历史状态
  • 直接获取对象状态会暴露实现细节

具体案例

  • 文本编辑器的撤销操作
  • 游戏存档/读档功能
  • 数据库事务回滚
  • 浏览器页面历史记录

3. 结构

  • 发起人(Originator):负责创建备忘录,记录当前时刻自身的内部状态,并可使用备忘录恢复内部状态。
  • 备忘录(Memento):用于存储发起人对象的内部状态,提供必要的获取状态的接口,但不允许外部

相关文章:

  • 元组类型的特性与应用场景:深入理解元组在 TypeScript 中的使用
  • vue3获取麦克风权限通过websocket进行通话
  • Group By Sets语法
  • 计算机二级MS Office第九套演示文稿
  • 数据结构与算法学习笔记(Acwing提高课)----动态规划·最长上升子序列模型
  • 【Linux系统】Ext系列文件系统
  • 【黑马JavaWeb+AI知识梳理】前端Web基础01 - HTML+CSS
  • Java进阶--面向对象设计原则
  • 大规模数据同步后数据总条数对不上的系统性解决方案:从字段映射到全链路一致性保障
  • Sam算法基本原理解析
  • CPU与GPU的功能与区别解析
  • 运维面试情景题:如果有一块新的硬盘要加入机架如何配置;如果新加了一台服务器,如何配置安全措施
  • DeepSeek预训练追求极致的训练效率的做法
  • 2025.04.26-淘天春招笔试题-第三题
  • MQL5教程 06 EA开发实战
  • 【OSG学习笔记】Day 11: 文件格式与数据交换
  • Dify中的文本分词处理技术详解
  • 财务管理域——企业风控系统设计
  • Channel如何安全地尝试发送数据
  • win11右键菜单改回win10模式
  • 中国海警局新闻发言人就菲律宾非法登临铁线礁发表谈话
  • 榆林市委常委王华胜已任榆林市政协党组书记
  • 上海潮汕联谊会举行换届大会,陈湖文当选会长
  • 第152次中老缅泰湄公河联合巡逻执法行动圆满结束
  • 刘非履新浙江省委常委、杭州市委书记,曾在吉湘云多省任职
  • 中科院新增三名副秘书长