一、备忘录模式介绍备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。例如:1.office重新打开时的恢复功能。2.事务的回滚操作备忘录模式UML图:Originator(发起人):负责创建一个备忘录Memento,用以...
分类:
其他好文 时间:
2016-01-09 15:20:01
阅读次数:
318
备忘录模式存在的意义在于在程序里面我们可能会遇到撤销操作的问题,将对象恢复到某个状态。类似事务的回滚。备忘录模式主要有三个对象发起人(Originator):要备份的成员,它提供一个创建备忘录的方法,将自身的信息复制到备忘录中,并提供另一个方法将备忘录中信息覆盖自身信息。备忘录(Memento):备...
分类:
编程语言 时间:
2015-12-31 19:13:22
阅读次数:
203
“状态变化”模式 在组件构建过程中,某些对象的状态经常面临变化,如何对这些变化进行有效的管理?同时又维持高层模块的稳定?“状态变化”模式为这一问题提供了一种解决方案。 典型模式 # state # memento Part 1 State 状态模式 动机 #在软件构...
分类:
编程语言 时间:
2015-12-01 23:09:08
阅读次数:
302
备忘录(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,并在该对象之外保存这个状态,这样以后就可将该对象恢复到原先保存的状态。package Memento;//发起人public class Originator { //记录此刻内部状态 ...
分类:
其他好文 时间:
2015-10-02 14:51:46
阅读次数:
282
一、前言备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可将该对象回复到原先保存的状态。二、结构图三、实例代码using System;using System.Collections.Generic;using System.Text;namesp...
备忘录模式(Memento),在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 Originator(发起人):负责创建一个备忘录Memento,用以记录当前时刻它的内部状态,并可使用备忘录恢复内部状态。Originator可根据...
分类:
其他好文 时间:
2015-09-09 01:05:54
阅读次数:
222
主要目的是保存一个对象的某个状态,以便在适当的时候恢复对象,个人觉得叫备份模式更形象些,通俗的讲下:假设有原始类A,A中有各种属性,A可以决定需要备份的属性,备忘录类B是用来存储A的一些内部状态,类C呢,...
分类:
其他好文 时间:
2015-09-02 17:27:48
阅读次数:
188
备忘录模式(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 以下给出备忘录模式的UML图: Originator(发起人):负责创建一个备忘录Memento,用以记录当前时刻它的内部状态,并可使...
分类:
其他好文 时间:
2015-09-02 11:54:01
阅读次数:
289
Memento 备忘录模式(行为型模式)对象状态的回溯对象状态的变化无端,如何回溯、恢复对象在某个点的状态?动机(Motivation)在软件构建过程中,某些对象的状态在转换过程中,可能由于某种需要,要求程序能够回溯到对象之前处于某个点时的状态。如果使用一些共有接口来让其他对象得到对象的状态,便会暴...
分类:
其他好文 时间:
2015-09-02 00:29:12
阅读次数:
233
using System;using System.Collections.Generic;namespace ConsoleApplication6{ /// /// 从字面意思就可以明白,备忘录模式就是对某个类的状态进行保存下来, /// 等到需要恢复的时候, /// ...
分类:
其他好文 时间:
2015-08-14 13:31:08
阅读次数:
119