1.意图在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可将该对象恢复到原先保存的状态。2.别名Token3.动机有时候有必要记录一个对象的内部状态。为了允许用户取消不确定的操作或从错误中恢复过来,需要实现检查点和取消机制,而要实现这些机制,你必须事先将状态信息保存在某处,这样才能是对象恢复到他们先前的状态。4.适用性以下情况使用Memento模式:
必需保存一...
分类:
其他好文 时间:
2015-06-25 19:40:00
阅读次数:
140
在阎宏博士的《JAVA与模式》一书中开头是这样描述备忘录(Memento)模式的: 备忘录模式又叫做快照模式(Snapshot Pattern)或Token模式,是对象的行为模式。 备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态.....
分类:
编程语言 时间:
2015-05-13 19:04:39
阅读次数:
313
Memento定义:memento是一个保存另外一个对象内部状态拷贝的对象,这样以后就可以将该对象恢复到原先保存的状态。Memento模式相对也比较好理解,我们看下列代码:public class Originator { private int number; private File fi...
分类:
编程语言 时间:
2015-02-28 10:06:17
阅读次数:
170
备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 Memento模式比较适用于功能比较复杂的,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属性中的一小部分时,Originator可以根据保存的Meme...
分类:
其他好文 时间:
2014-12-30 15:10:21
阅读次数:
192
undo-redo需要备忘录模式和命令模式做支撑,之前有学习过了command模式和memento模式的一些基本知识。这里要结合两个模式实现一个undo-redo操作的模块,巩固所学的知识。
系统框图:
命令分发控制器主要有四个任务:
1.系统初始化,加载系统配置参数并把这些数据缓存起来,这些应用程序级别的配置参数可以使用序列化机制,把数据缓存而不用每次去读...
分类:
其他好文 时间:
2014-12-13 17:57:23
阅读次数:
218
/**
* 数据对象
* @author stone
*
*/
public class DataState {
private String action;
public void setAction(String action) {
this.action = action;
}
public String getAction() {
return action;...
分类:
编程语言 时间:
2014-10-13 23:20:27
阅读次数:
250
本文原文请见:http://www.raywenderlich.com/46988/ios-design-patterns.由 @krq_tiger(http://weibo.com/xmuzyq)翻译,如果你发现有什么错误,请与我联系谢谢。备忘录(Memento)模式备忘录模式快照对象的内部状态并...
分类:
移动开发 时间:
2014-08-15 23:49:19
阅读次数:
275
备忘录模式(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。
(1),把要保存的细节给封装在 Memento 中,那一天要更改保存的细节也不用影响客户端了。
(2),Memento 模式比较适用于功能比较复杂的,但需要维护或记录属性历史的类,需要保存的属性只是众多属性中的一小部分时,Originator 可...
分类:
其他好文 时间:
2014-08-05 00:49:28
阅读次数:
303
一、备忘录(Memento)模式结构备忘录对象是一个用来存储另外一个对象内部状态的快照(snapshot)的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捕捉住,并外部化,存储起来,从而可以在将来适合的时候把这个对象还原到存储起来的状态。备忘录模式常常与命令模式和迭代子模式一同使用。...
分类:
编程语言 时间:
2014-06-20 23:40:15
阅读次数:
330
一. 备忘录模式
定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。
结构图:
使用范围:
Memento 模式比较适用于功能比较复杂的,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属性中的一小部分时,Originator 可以根据保存的 Memento 信息还原到前一状态。
...
分类:
编程语言 时间:
2014-06-17 16:23:05
阅读次数:
338