Design Pattern 5-Memento

using System;

namespace Pattern
{
 /// <summary>
 /// Summary description for Class1.
 /// </summary>
 public class memento
 {
  public int number;   
  public string file = "";
  public memento(Originator m)
  {  
  number = m.number ;  
  file = m.file;
  }
 }
 public class Originator
 {   
  
 
  public int number;   
  public string file = "";  
  public Originator(){}  // 創建一個Memento 
  public memento getMemento(){    return new memento(this);}
    // 恢復到原始值  
  public void setMemento(memento m)
  {    
   number = m.number;  
      file = m.file;  
  }

 }
}

   //備忘錄
  Originator o=new Originator();
  o.file ="old file";
   o.number =100;
 memento m=o.getMemento();

 o.file ="new file";
  o.number =2100;

 o.setMemento(m);
 Console.WriteLine(o.file);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章