备忘录( Memento)模式: 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。
适用性:
所涉及的角色:
备忘录角色:将发起人 (Originator) 的对象内部状态存储起来,备忘录可以根据发起人对象的的判断来决定存储多少发起人( Originator )对象的内部状态。奋忘录同时可以保护其内容不被发起人 (Originator) 对象之外的任何对象所索。
发起人 (Originator) 角色:创建一个含有当前的内部状态的的备忘录对象 , 使用备忘录对象存储内部状态。
负责人( Caretaker )角色:负责保存备忘录对象,不检查备忘录对象的内容。
一个简单的例子:备忘录角色