`

备忘录模式Memento保存和回复内部状态

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

public interface Memento {
 
}

public class Originator {
  private String state = "";

  public Memento createMemento() {
    return new MementoImpl(state);
  }

  public void setMemento(Memento memento) {
    MementoImpl mementoImpl = (MementoImpl)memento;
    this.state = mementoImpl.getState();
  }
 
  private static class MementoImpl implements Memento {
    private String state = "";
    public MementoImpl(String state) {
      this.state = state;
    }
    public String getState() {
      return state;
    }
  }
}

public class Caretaker {
  private Memento memento = null;
  public void saveMemento(Memento memento) {
    this.memento = memento;
  }
  public Memento retriveMememto() {
    return this.mememto;
  }
}
分享到:
评论

相关推荐

    设计模式之备忘录模式(Memento Pattern)

    备忘录模式(Memento Pattern)是软件设计模式中的一种行为模式,它的主要目的是在不破坏对象封装性的前提下,允许对象在特定时刻保存其内部状态,并能够在之后恢复到保存时的状态。这种模式广泛应用于撤销/重做功能...

    设计模式之备忘录(memento)

    设计模式是软件工程中的...总的来说,备忘录模式提供了一种优雅的方式去处理对象状态的保存和恢复,保持了对象的封装性,同时也使得代码更易于维护和扩展。理解并熟练掌握这个模式对于任何开发者来说都是非常有价值的。

    设计模式之备忘录模式(Memento)

    备忘录模式(Memento Pattern)是设计模式中的一种行为模式,主要目的是在不违反封装原则的情况下,保存一个对象的内部状态,以便在需要时能够恢复到先前的状态。这种模式通常用于实现撤销/重做功能或者在游戏中保存...

    C#面向对象设计模式纵横谈(21):(行为型模式) Memento 备忘录模式

    备忘录模式(Memento Pattern)是一种行为设计模式,它允许在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将对象恢复到先前的状态。这种模式在需要撤销/重做功能、...

    备忘录模式.rar备忘录模式.rarjava设计模式

    备忘录模式是一种行为设计模式,它允许在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将对象恢复到原先保存的状态。这种模式常用于需要记录用户操作历史或者游戏进度...

    设计模式_备忘录模式.zip

    备忘录模式是一种在软件工程中广泛使用的结构型设计模式,其主要目的是为了在不破坏封装性的前提下,能够安全地保存对象的状态,并在需要时恢复到先前保存的状态。这种模式通常用于那些需要记录和回滚操作的重要场景...

    备忘录模式Demo

    备忘录模式是一种设计模式,它在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将对象恢复到原先保存的状态。这种模式常用于需要记录用户操作或者游戏进度等场景,允许...

    设计模式之备忘录模式

    备忘录模式的核心思想是保存对象的内部状态,以便在需要时能恢复到这个状态,而不会破坏封装性。 在备忘录模式中,主要有三个角色: 1. **发起人(Originator)**:它是需要保存和恢复状态的对象。发起人知道如何...

    C#备忘录模式 代码例子

    备忘录模式是一种设计模式,它在不破坏封装性的前提下,保存对象的内部状态,以便在需要的时候恢复。在C#中,备忘录模式常用于实现撤销/重做功能,或者在需要记录和恢复对象状态的情况下。下面将详细解释备忘录模式...

    备忘录模式实现及案例

    总之,备忘录模式是一种强大的设计模式,它提供了一种在不违反封装原则的情况下保存和恢复对象状态的方法。在C#中,通过创建备忘录对象并由管理者进行管理和存储,我们可以有效地实现这一模式,提高代码的可维护性和...

    设计模式之备忘录模式,内含可运行代码及详细解释

    备忘录模式的核心思想是提供一种方法来捕获一个对象的内部状态,并在该对象之外保存这个状态,以便在需要时能够恢复到先前保存的状态,而不会影响对象的其他部分。 在描述中提到的例子中,备忘录模式被用来记录和...

    java设计模式-备忘录模式源代码

    备忘录模式是一种在软件工程中广泛使用的面向对象设计模式,它主要用来安全地保存对象的状态,以便在需要时能够恢复到先前的状态。这个模式的名字来源于我们日常生活中使用的备忘录,它记录了一些重要的信息,当需要...

    设计模式之备忘录模式的Java版本实现

    备忘录模式的核心思想是通过创建一个备忘录对象来存储原对象的状态,这个备忘录对象包含了原对象的内部状态,但对外部世界是透明的。这样,当需要回滚到特定状态时,只需通过备忘录对象恢复这些状态,而不会影响到...

    设计模式-备忘录模式(讲解及其实现代码)

    备忘录模式是一种在软件工程中广泛使用的面向对象设计模式,它主要用来安全地保存对象的状态,以便在需要时能够恢复到先前的状态。备忘录模式的核心思想是封装对象的状态,将其保存到一个独立的对象(备忘录)中,而...

    设计模式 - 备忘录模式(C++实例)

    备忘录模式的核心在于备忘录对象,它存储了原对象的内部状态,但并不了解如何改变这些状态,只负责存储和恢复。 在C++中,备忘录模式通常包含三个角色:发起人(Originator)、备忘录(Memento)和照料者...

    备忘录模式(Memento) 注册时用的

    备忘录模式(Memento Pattern)是一种设计模式,它允许对象在不破坏封装性的前提下,捕获并存储其内部状态,以便在需要时恢复到先前的状态。这种模式常用于撤销/重做功能,或者在注册过程中保存用户信息,防止因意外...

    Java设计模式-备忘录

    备忘录模式的优点在于,它可以提供一种方式来安全地保存和恢复对象状态,而不会暴露对象的内部结构。然而,需要注意的是,如果备忘录对象占用大量内存,可能会对系统性能产生影响,因此在使用时应权衡利弊。 通过...

    备忘录模式代码示例

    备忘录模式是一种设计模式,它允许对象在不破坏封装性的前提下,捕获和存储其内部状态,以便在需要时能恢复到该状态。这种模式在需要保存和恢复对象状态,而又不想对外部世界暴露其内部实现细节时非常有用。备忘录...

    备忘录模式 C++ 实现

    备忘录模式是一种行为设计模式,它允许在不破坏封装性的前提下,捕获和恢复一个对象的内部状态。在C++中实现备忘录模式,可以有效地帮助开发者在程序运行过程中保存对象的状态,以便在需要时恢复到之前的状态,这...

Global site tag (gtag.js) - Google Analytics