第二十四篇 设计模式--备忘录模式
2015-02-05 14:53
274 查看
定义:在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。因此以后就可将该对象恢复到原先保存的状态。
代码:
代码:
package memento_model; /** * * @author naivor * 备忘录模式-场景类 */ public class MementoModel { public static void main(String[] args) { Originator originator=new Originator(); Caretaker caretaker=new Caretaker(); caretaker.setMemento(originator.createMemento()); //备份originator originator.setMemento(caretaker.getMemento()); //还原originator } } /** * * @author naivor * 备忘录模式-发起人类 */ class Originator{ private int pro1; private String pro2; public int getPro1() { return pro1; } public void setPro1(int pro1) { this.pro1 = pro1; } public String getPro2() { return pro2; } public void setPro2(String pro2) { this.pro2 = pro2; } public Memento createMemento(){ return new Memento(pro1, pro2); } public void setMemento(Memento memento){ setPro1(memento.getPro1()); setPro2(memento.getPro2()); } } /** * * @author naivor * 备忘录模式-备忘录 */ class Memento{ private int pro1; private String pro2; public Memento(int pro1, String pro2) { this.pro1=pro1; this.pro2=pro2; } public int getPro1() { return pro1; } public void setPro1(int pro1) { this.pro1 = pro1; } public String getPro2() { return pro2; } public void setPro2(String pro2) { this.pro2 = pro2; } } /** * * @author naivor * 备忘录模式-备忘录管理者 */ class Caretaker{ private Memento memento; public Memento getMemento() { return memento; } public void setMemento(Memento memento) { this.memento = memento; } }
相关文章推荐
- HeadFirst 设计模式学习笔记22-- 备忘录(Memento)模式拾零
- 十八 设计模式之备忘录模式
- 设计模式学习-Memento(备忘录)
- 设计模式学习-Memento(备忘录)
- java 设计模式 学习笔记 (14) 备忘录模式
- Java设计模式-----Memento备忘录模式
- 设计模式-----备忘录模式
- 设计模式之备忘录模式
- 设计模式之备忘录模式Memento
- 设计模式--Memento 备忘录模式
- 设计模式之备忘录模式
- c++设计模式之备忘录模式
- 设计模式----Memento(备忘录)模式
- 设计模式----Memento(备忘录)
- 设计模式之Memento(备忘录)
- 设计模式学习笔记(二十)——Memento备忘录
- DOTA版设计模式——备忘录
- 设计模式-结构型模式-备忘录
- 《模式——工程化实现及扩展》(设计模式C# 版)《备忘录模式 Memento》——“自我检验"
- 深入浅出Java设计模式之备忘录模式