备忘录模式
来源:互联网 发布:微商吸粉软件 编辑:程序博客网 时间:2024/05/20 06:29
备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。
比较适用于功能比较复杂的,但需要维护或者记录属性历史的类,或者需要保存的属性只是众多属性的一小部分时,originator可以根据保存的memento信息还愿到前一状态。
class Program { static void Main(string[] args) { Originator o = new Originator(); o.State = "On"; o.Show(); Caretaker c = new Caretaker(); c.Memento = o.CreateMemento(); o.State = "Off"; o.Show(); o.SetMemento(c.Memento); o.Show(); Console.Read(); } } class Originator { private string state; public string State { get { return state; } set { state = value; } } public Memento CreateMemento() { return (new Memento(state)); } public void SetMemento(Memento memento) { state = memento.State; } public void Show() { Console.WriteLine("State=" + state); } } class Memento { private string state; public Memento(string state) { this.state = state; } public string State { get { return state; } } } class Caretaker { private Memento memento; public Memento Memento { get { return memento; } set { memento = value; } } }
0 0
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- 备忘录模式
- CodeForces 5891 Lottery
- 在freecodecamp练习的算法题心得记录
- HDOJ 1914 The Stable Marriage Problem
- Android自定义View【实战教程】5⃣️---Canvas详解及代码绘制安卓机器人
- yande.re Y站API翻译
- 备忘录模式
- Box of Bricks
- RNN 的训练
- poj3279(状态压缩)
- stm32 TIM2 重映射
- dierectdraw 7显示视频
- Ubuntu 16.04 命令行下安装jdk1.8
- 数据结构——线性表——散列存储结构——哈希表知识点总结
- A1 = ?