作者:gnuhpc
出处:http://www.cnblogs.com/gnuhpc/
1.概述
这个模式也比较简单,书中没有提到。用于恢复上次操作结果等场景,比如数据库回滚等。这个模式有三个参与的实体:
Originator:知道如何保存自己的对象。
Caretaker:知道Originator何时以及为何保存并恢复自己的对象。
Memento:由Originator进行读写,并且Caretaker完成维护的对象
2.实例
首先,我们创建一个Memento:
里面有我们希望保存的状态的存取方法。
然后我们创建Originator:
提供了保存状态、恢复状态以及设置状态的接口。
最后我们再实现Caretaker:
在这里面提供了对Memento的维护的相关存取接口。
到此,我们就可以写一段测试程序来看看这个备忘录模式是不是能正常工作:
3.UML
作者:gnuhpc
出处:http://www.cnblogs.com/gnuhpc/
作者:gnuhpc
出处:http://www.cnblogs.com/gnuhpc/
除非另有声明,本网站采用知识共享“署名 2.5 *”许可协议授权。