备忘录模式

标签(空格分隔): 设计模式


简介
  行为型模式。保存一个对象的状态,以便在某个时刻恢复对象。
  打boss前存档,下象棋悔棋,编辑文档时使用Ctrl+z撤销等场景都是备忘录模式的应用。
  优点:可以回滚。缺点:资源消耗严重。

具体实现
  写一个存储对象状态的类(类似于备忘),然后在另一个类中维护一个备忘类的List,这个类类似于备忘录。当需要保存状态时,把一个备忘对象add进备忘录类里即可。

备忘录模式的结构
  发起人:记录当前时刻的内部状态,负责定义哪些属于备份范围的状态,负责创建和恢复备忘录数据。
  备忘录:负责存储发起人对象的内部状态,在需要的时候提供发起人需要的内部状态。
  管理角色:对备忘录进行管理,保存和提供备忘录。

注意
  当需要记录多个状态时,使用Map容器来存储一条备忘,然后备忘录管理类中的List就存储这些Map的集合即可。

原文地址:https://www.cnblogs.com/banyu/p/6811520.html