备忘录模式应该是设计模式中最简单的一个了,比如开会中找人来做备忘录,就是这个意思。

public class Cahier {
    private String name;

    private String content;

    private String persons;

 public void setName (String name) {
  this.name =  name;
 }
 public String getName () {
  return this.name;
 }
 public void setContent (String content) {
  this.content = content;
 }
 public String getContent () {
  return this.content;
 }
 public void setPersons (String persons) {
  this.persons =  persons;
 }
 public String getPersons () {
  return this.persons;
 }

    public Memento getMemento() {
  return new Memento(this);
 }

 public void setMemento(Memento memento) {
  this.name = memento.getName();
  this.content = memento.getContent ();
  this.persons = memento.getPersons ();
 }


public class Memento {
    private String name;

    private String content;

    private String persons;

    public Memento (Cahier cahier) {
  this.name = cahier.getName();
  this.content = cahier.getContent ();
  this.persons = cahier.getPersons ();
 }

 public void setName (String name) {
  this.name =  name;
 }
 public String getName () {
  return this.name;
 }
 public void setContent (String content) {
  this.content = content;
 }
 public String getContent () {
  return this.content;
 }
 public void setPersons (String persons) {
  this.persons =  persons;
 }
 public String getPersons () {
  return this.persons;
 }

public class Client {


    public static void main(String[] argv) {


  Cahier cahier = new Cahier();


  cahier.setName("公司销售会议");


        cahier.setContent("有关销售价格的会议内容");


        cahier.setPersons("总经理、销售处长");


        System.out.println("原来的内容" + cahier.getName() + " :" + cahier.getContent() +  " :" + cahier.getPersons());


        Memento memento = cahier.getMemento();


  //进行其它代码的处理


  cahier.setName("公司办公会议");


        cahier.setContent("有关员工稳定的会议内容");


        cahier.setPersons("董事长、总经理、人事副总");


        System.out.println("修改后的内容" + cahier.getName() + " :" + cahier.getContent() +  " :" + cahier.getPersons());


  //恢复原来的代码


  cahier.setMemento(memento);


        System.out.println("恢复到原来的内容" + cahier.getName() + " :" + cahier.getContent() +  " :" + cahier.getPersons());


    }


}