首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    设计模式之备忘录模式(Memento模式)引入备忘录模式备忘录模式的实例备忘录模式分析

    引入备忘录模式 备忘录模式的实例 备忘录模式的分析 引入备忘录模式 我们在使用文本编辑器的时候,一般如果不小心误操作了,按ctrl+z就可以恢复之前的状态,撤销(undo)操作。...备忘录模式主要可以实现一下几个功能: undo撤销 redo重做 history 历史记录 snapshot快照 备忘录模式就像在某一个时刻给一个对象实例拍个照片,然后将以后有必要的时候,就可以将实例恢复到当时的状态...备忘录模式的实例 我们实现一个实例,可以保存实例某个时间点的状态,并且恢复。 ?...备忘录模式分析 备忘录模式的角色: Originator生成者 生成者会在保存自己状态的时候,new一个新的menmeto角色 当需要恢复的时候,只需要把以前的menmeto传给生成者,他就会将自己恢复至...备忘录模式的类图 ? image.png

    42520

    备忘录模式

    我们相当于把对象原始状备份保留,所以叫备忘录模式。 结构与组成 首先看一下备忘录模式的UML图: ?...备忘录模式主要包含:发起者对象(Originator)、备忘录(Memento)和管理者角色(Caretaker)三部分组成。...发起者对象:负责创建一个备忘录来记录当前对象的内部状态,并可使用备忘录恢复内部状态。 .备忘录对象:负责存储发起者对象的内部状态,并防止其他对象访问备忘录。...管理者对象:负责备忘录权限管理,不能对备忘录对象的内容进行访问或者操作。...缺点: 1、如果状态需要完整地存储到备忘录对象中,那么在资源消耗上面备忘录对象比较昂贵。 2、当发起者对象的状态改变的时候,有可能这个协议无效。

    61680

    备忘录模式浅析

    备忘录模式的基本介绍 意图 在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 结构 备忘录模式的基本结构如下: ?...这里涉及到的参与者有如下几种: Memento(备忘录) 备忘录存储原发器对象的内部状态。原发器根据需要决备忘录存储原发器的哪些内部状态。...Originator(原发器) 原发器创建一个备忘录,用于记录当前时刻它的内部状态 使用备忘录恢复内部状态。 Caretaker(负责人) 负责保存好备忘录 不能对备忘录的内容进行操作或者检查。...备忘录模式的示例 接下来,我们就模拟一个游戏存档的场景来给出一个备忘录模式的示例。...缺点: 1、如果发起人角色的状态需要完整地存储到备忘录对象中,那么在资源消耗上面备忘录对象会很昂贵。

    41820

    备忘录模式

    备忘录模式 基本概念 备忘录模式(Memento Pattern)在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。...这样以后就可将该对象恢复到原先保存的状态 可以这样理解备忘录模式:现实生活中的备忘录是用来记录某些要去做的事情,或者是记录已经达成的共同意见的事情,以防忘记了。...而在软件层面,备忘录模式有着相同的含义,备忘录对象主要用来记录一个对象的某种状态,或者某些数据,当要做回退时,可以从备忘录对象里获取原来的数据进行恢复操作 备忘录模式属于行为型模式 UML类图 对原理类图的说明...-即 (备忘录模式的角色及职责) originator : 对象(需要保存状态的对象) Memento :备忘录对象,负责保存好记录,即Originator内部状态 Caretaker: 守护者对象,...4、数据库的事务管理 为了节约内存,备忘录模式可以和原型模式配合使用 不知上述代码是否看明白,个人建议稍微动手操作一下增加记忆。关于备忘录模式就讲到这里了。如果有帮助,欢迎点赞关注。

    19020

    备忘录模式

    备忘录模式 概念 备忘录模式(Memento Pattern)是一种行为设计模式,用于在不暴露对象内部状态的情况下,捕获并存储对象的当前状态,以便日后可以将对象恢复到存储的状态。...备忘录模式可以有效地实现撤销/恢复操作。 组件和职责 组件 描述 Originator(发起人) 定义一个创建备忘录和恢复备忘录的接口,记录并还原对象状态。...Memento(备忘录) 存储发起人的状态,提供发起人访问但对其他对象不可见,确保封装性。...存储开销:保存多个备忘录可能消耗较多资源。 撤销/恢复:支持轻松撤销和恢复操作。 实现复杂性:设计和管理备忘录存储结构复杂。 操作简单:发起人通过接口即可实现状态保存与恢复。...过多备忘录:历史记录过多可能影响性能。 与其他模式的比较 特性 备忘录模式 命令模式 主要作用 保存和恢复对象状态 将操作封装为对象,支持撤销和记录。

    5810
    领券