备忘录模式

备忘录模式

备忘录模式,也叫做快照模式。常用在需要临时保存对象当前状态的场景中,如游戏中的保存进度场景。当我们需要还原时,只需要重新加载之前保存的对象即可。属于GOF定义的23种设计模式。个人认为是比较简单的一种设计模式。

需要注意的是当需要保存的对象过多或者内容过大是,使用备忘录模式就可以产生性能上的问题。优点在于,我们可以将一个对象的状态保存在对象的外部,当需要使用的时候再重新提取即可。

代码如下

public class test

{

public static void main(String[] args)

{

person a=new person();

a.name="mike";

a.age="18";

note n=new note();

a.setNote(n);

a.show();

a.name="jom";

a.show();

a.back(n);

a.show();

}

}

class note

{

private String name;

private String age;

public String getName()

{

return name;

}

public void setName(String name)

{

this.name=name;

}

public void setAge(String age)

{

this.age=age;

}

public String getAge()

{

return age;

}

}

class person

{

public String name;

public String age;

public void setNote(note n)

{

n.setAge(age);

n.setName(name);

}

public void back(note n)

{

this.name=n.getName();

this.age=n.getAge();

}

public void show()

{

System.out.println(name+"-"+age);

}

}

结果如图

image

联系我:renhanlinbsl@163.com

2016-8-17

20:00

原文地址:https://www.cnblogs.com/ives/p/Snapshot_pattern.html