备忘录
来源:互联网 发布:索尼电视推荐 知乎 编辑:程序博客网 时间:2024/06/03 21:22
意图
保存一个对象在某一刻的(部分)状态,这样以后需要时它才能恢复到先前的状态.(和原型模式功能类似).
构成---参与者:
Memento: 备忘录。正常使用的类.
Originator: 原发器。负责创建一个备忘录,用以记录当前对象的内部状态,通过它将当前的( Memento:备忘录 )对象的某一些状态保存到(Caretaker:看管者)里面,也可通过它将(Caretaker: 看管者)保存的某一时刻的某些状态给取出.
Caretaker: 看管者。负责保存好备忘录,不能对备忘录的内容进行操作和访问,只能够将备忘录传递给其他对象。
class 备忘录 //相当于普通类,里面有几个属性 { public string Name { get; set; } public string Phone { get; set; } public double Money { get; set; } }
public 备忘录 保存备忘录(string n,string p,double m) //保存某一时刻的三个属性的状态 { return new 备忘录() {Name = n, Money = m, Phone = p}; } public 备忘录 RestoreMemento(备忘录 memento)//取出那时保存的‘备忘录’的一些状态 { return memento; }
class 看管者 {//保存的某一时刻备忘录的状态 public 备忘录 Memeneto { get; set; } }
备忘录 memeont = new 备忘录() {Name = "way", Phone = "13532540453", Money = 123456.123}; 原发器 yuan = new 原发器();//这里是正常调用 看管者 locks = new 看管者 { Memeneto = yuan.保存备忘录(memeont .Name ,memeont .Phone ,memeont .Money ) }; memeont.Name = "souj"; memeont.Phone = "13418286056"; memeont.Money = 789456.55; 备忘录 memeont1= yuan.RestoreMemento(locks.Memeneto);当memeont修改后不影响备忘录 memeont1= yuan.RestoreMemento(locks.Memeneto);以前保管的结果.
阅读全文
0 0
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 备忘录
- 如何做一个Android开发(我认为)
- Spring源码(一)-Spring整体架构和环境搭建
- Spring源码(二)-Context的创建(上)
- CodeForces
- myeclipse优化
- 备忘录
- OpenJudge 2.6-1775 采药
- 静态链表的C++简单实现
- Spring源码(三)-Context的创建(下)
- Android之Handler
- 阿里的Java面试经验---二
- 面向对象学习笔记
- 唐山三百首
- Spring源码(四)-bean的加载(上)