void Main(){ Product product = new Product{Name="A"}; Director director = new Director(); director.Memento=product.Save(); product.Load(di...
分类:
其他好文 时间:
2014-11-17 10:39:29
阅读次数:
248
前言:【模式总览】——————————by xingoo 模式意图 这个模式主要是想通过一个对象来记录对象的某种状态,这样有利于在其他需要的场合进行恢复。 该模式还有跟多可以扩展的地方,比如可以记录多个时间的状态,每个角色都有可以扩展的空间,完全看业务场景而定。 应用场景 1 保存对象...
分类:
其他好文 时间:
2014-11-08 13:17:23
阅读次数:
265
假如我们已经记录一个人的个人信息,但是发现信息写错了,然后我先备份下再去修改,结果发现原来的信息是正确的,于是我就看备份的个人信息还原到初始的状态,下面我们用代码去实现class Program { static void Main(string[] args) {...
分类:
其他好文 时间:
2014-11-06 14:35:58
阅读次数:
273
state = $state; } public function show(){ echo $this->state.""; } public function setmemento(){//保存至备忘录 return new memento($this->state); } publi...
分类:
Web程序 时间:
2014-11-03 16:21:55
阅读次数:
160
备忘录模式(Memento Pattern),又叫快照模式(Snapshot Pattern)或Token模式,是对象的行为模式。
备忘录对象是一个用来存储另一个对象内部状态的快照的对象。备忘录模式的用意,是在不破坏封装(enscapsolution)的条件下,将另一个对象的状态捕捉(capture)住,并外部(Externalize)化,存储起来,从来可以在将来合适的时候,把这个对象还原到存储起来的状态。...
分类:
其他好文 时间:
2014-10-17 18:53:41
阅读次数:
219
/**
* 数据对象
* @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
备忘录模式(Memento): 主要目的是保存一个对象的某个状态,以便在适当的时候恢复对象。
Memento设计模式用来备份一个对象的当前状态,当需要的时候,用这个备份来恢复这个对象在某一个时刻的状态。...
分类:
编程语言 时间:
2014-10-12 18:18:38
阅读次数:
233
定义:在不破坏封装性的前提下中,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。
结构图:
示例代码:
public class Memento {
private String state;
public Memento(String state) {
this.state = state;
}
public ...
分类:
其他好文 时间:
2014-10-05 16:26:28
阅读次数:
196
备忘录模式(Memento Pattern):在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。它是一种对象行为型模式,其别名为Token。模式角色与结构:
分类:
其他好文 时间:
2014-09-25 23:21:58
阅读次数:
518
21.5再谈备忘录的封装备忘录是一个很特殊的对象,只有原发器对它拥有控制的权力,负责人只负责管理,而其他类无法访问到备忘录,因此我们需要对备忘录进行封装。 为了实现对备忘录对象的封装,需要对备忘录的调用进行控制,对于原发器而言,它可以调用备忘录的所有信息,允许原发器访问返回到先前状态所需的所有数据;...
分类:
其他好文 时间:
2014-09-24 20:16:47
阅读次数:
265