Memento(备忘录)——对象行为模式
来源:互联网 发布:海关数据有用吗 编辑:程序博客网 时间:2024/05/16 12:11
意图:在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。
单就实现保存一个对象在某一时刻的状态的功能,还是很简单的——将对象中要保存的属性放到一个专门管理备份列表的的对象中,需要的时候则调从备份的列表中将该对象的属性放回去。但是为了能让你的备份对象访问到原对象中的属性,是否意味着你就要全部公开或者部分公开对象原本私有的属性呢?如果你的做法已经破坏了封装,那么就要考虑重构一下了。
备忘录模式的组成部分:
(1)备忘录(Memento)角色:备忘录角色存储“备忘发起角色”的内部状态。“备忘发起角色”根据需要决定备忘录角色存储“备忘发起角色”的哪些内部状态。为了防止“备忘发起角色”以外的其他对象访问备忘录。备忘录实际上有两个接口,“备忘录管理者角色”只能看到备忘录提供的窄接口——备忘录角色中存放的属性对它来讲是不可见的。“备忘发起角色”则能够看到一个宽接口——能够看到自己放入备忘录角色中属性。
(2)备忘发起(Originator)角色:“备忘发起角色”创建一个备忘录,用以记录当前时刻它的内部状态。在需要时使用备忘录恢复内部状态。
(3) 备忘录管理者(Caretaker)角色:负责保存好备忘录,但不能对备忘录的内容进行操作或检查。
- Memento(备忘录)——对象行为模式
- 备忘录模式Memento(对象行为型)
- (行为模式)MEMENTO——备忘录模式
- 行为模式:Memento(备忘录)
- Memento 备忘录模式 ----对象行为型模式
- 3.6 Memento(备忘录) -- 对象行为型模式
- JAVA设计模式(19) —<行为型>备忘录模式(Memento)
- 行为型模式-----备忘录模式(Memento)
- 备忘录模式(Memento)----行为笔记
- 十八、备忘录模式Memento(行为型)
- 备忘录模式(Memento)----行为笔记
- 行为型模式-备忘录memento
- C#面向对象设计模式纵横谈 学习笔记21 Memento备忘录模式(行为型模式)
- 备忘录模式(Memento Pattern,标记模式 Token Pattern,对象行为型模式)
- 备忘录模式(Memento)—通风系统
- 备忘录模式——Memento
- 设计模式(4)-行为型-备忘录模式(Memento)
- 行为型模式之备忘录模式(Memento)
- 无限树状结构逻辑
- 《鸟哥Linux私房菜》学习笔记_chap1_历史发展、OS相关
- php 接口类,抽象类 的实际作用
- Sql Performance Analyzer (SPA)
- UML类图总结
- Memento(备忘录)——对象行为模式
- linux用户管理
- 关于mouseout和mouseover等等类似事件的冒泡问题
- [想写教程吗?]做教程经常能用到的软件
- 学习笔记--类加载器,代理类
- 《鸟哥Linux私房菜》学习笔记_chap3_主机规划
- 安装office 找不到officeMUI.msi
- ubuntu 文件权限命令详解使用格式和方法
- NDK r5 Toolchain 简单测试