美文网首页
备忘录模式

备忘录模式

作者: fanren | 来源:发表于2019-04-09 21:41 被阅读0次

    定义

    在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态;

    • 用户保存对象的当前状态,并且以后可以再次恢复到此状态,通俗说法“后悔药”;
    • 需要保证被保存对象的状态不能被对象外部访问(目的是为了保护好被保存的对象的状态的完整性,以及内部实现不想外暴露)

    应用场景

    • 需要保存对象在某一个时刻的状态或者部分状态
    • 如果用一个接口来让其他对象得到这些状态,将会暴露对象的内部实现细节并且破坏对象的封装性,一个对象不希望外界访问其内部状态,通过中间对象可以间接访问其内部状态。

    角色划分

    • 角色一:(Originator)负责创建一个备忘录,可以记录或者回复内部状态
    • 角色二:(Menmento)备忘录角色,用于存储角色一的内部状态,并且可以防止角色一以外的对象访问角色二
    • 角色三:(Caretaker)负责存储备忘录,不能够向外暴露备忘录内容,以及进行操作;

    案例

    • 原始案例:demo
      以玩游戏为例,我们每过一段时间,都要对游戏进行进行存档,下次打开的时候,可以继续游戏;这里我们使用备忘录模式;
    • json数据案例:demo

    相关文章

      网友评论

          本文标题:备忘录模式

          本文链接:https://www.haomeiwen.com/subject/rfdwiqtx.html