`

java 备忘录模式

 
阅读更多
package memento;
/**
 * 备忘录(用于存放状态的类)
 * @author Administrator
 *
 */
public class Memento {
	private String state;
	
	public Memento(String state){
		this.state = state;
	}

	public String getState() {
		return state;
	}

	public void setState(String state) {
		this.state = state;
	}
	
	
}

 

package memento;
/**
 * 保存和读取备忘录的类
 * @author Administrator
 *
 */
public class Creater {
	private Memento memento;
	/**
	 * 保存备忘录
	 * @param memento
	 */
	public void saveMemento(Memento memento){
		this.memento=memento;
	}
	/**
	 * 读取存档
	 * @return
	 */
	public Memento readMemento(){
		return this.memento;
	}
	
}

 

package memento;
/**
 * 发起人角色 负责创建备忘录对象将自己的内部状态存储起来
 * @author Administrator
 *
 */
public class Originator {
	private String state;
	/**
	 * 创建备忘录
	 * @param state
	 * @return
	 */
	public Memento createMemento(){
		return new Memento(state);
	}
	/**
	 * 读取存档复制给state
	 * @param memento
	 */
	public void restoreMemento(Memento memento){
		this.state = memento.getState();
	}
	
	public String getState() {
		return state;
	}
	
	public void setState(String state) {
		this.state = state;
		System.out.println("state is "+state);
	}
	
	
}

 

package memento;
/**
 * Client 客户端类
 * @author Administrator
 *
 */
public class MementoMain {
	public static void main(String[] args) {
		Originator org = new Originator();
		org.setState("ON");
		Memento m = org.createMemento();
		Creater c= new Creater();
		c.saveMemento(m);
		org.setState("OFF");
		org.restoreMemento(c.readMemento());
		System.out.println(org.getState());
	}
	
}

 

分享到:
评论

相关推荐

    Java设计模式-备忘录

    下面是一个简单的Java备忘录模式示例: ```java // 发起人角色 class Originator { private String state; public Originator(String state) { this.state = state; } // 创建备忘录 public Memento ...

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

    在Java中,备忘录模式通常包括三个关键角色:原始对象(Originator)、备忘录(Memento)和管理者(Caretaker)。原始对象是需要保存状态的对象,它创建并存储在备忘录中的状态。备忘录负责存储原始对象的状态,而...

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

    在Java中实现备忘录模式,我们通常会定义三个关键角色:原始对象(Originator)、备忘录(Memento)和照料者(Caretaker)。首先,原始对象创建并维护其状态,它知道如何创建备忘录,并且可以在需要时使用备忘录恢复...

    java常用设计模式-备忘录模式

    Java 备忘录模式详解 备忘录模式(Memento Pattern)是一种行为设计模式,它允许在不破坏封装性的情况下捕获和恢复对象的内部状态。该模式通常用于需要撤销操作或恢复先前状态的情况下。备忘录模式包括三个主要组件...

    java设计模式-备忘录模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段...

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

    在提供的“备忘录模式.rar”压缩包中,可能包含了实现备忘录模式的Java代码示例,包括发起人、备忘录和存档者的具体实现,以及如何在实际项目中使用这些组件的例子。学习这些代码可以帮助你更好地理解备忘录模式的...

    深入理解JAVA 备忘录模式

    深入理解JAVA备忘录模式 备忘录模式(Memento Pattern)是一种行为型设计模式,它允许在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便在适当的时候恢复对象。 意图 备忘录...

    日历备忘录Java源码

    在本项目中,"日历备忘录Java源码" 提供了一套完整的日历应用程序的源代码,主要由四个核心文件组成:NotePad.java、CalendarPad.java、Month.java 和 Year.java。这些文件分别代表了备忘录、日历、月份和年份的功能...

    23种设计模式(18)java备忘录模式

    Java备忘录模式是一种行为设计模式,主要用于在不破坏对象封装性的前提下,保存和恢复对象的内部状态。这种模式的应用场景通常是当需要撤销或重做某些操作时,如文本编辑器的撤销/重做功能。 备忘录模式的核心组成...

    实例讲解JAVA设计模式之备忘录模式

    JAVA 设计模式之备忘录模式 Java 设计模式之备忘录模式是 Java 设计模式中的一种重要模式,主要用于保存和恢复对象的内部状态。在游戏开发中,备忘录模式可以用于保存游戏角色的状态,例如生命力、攻击力、防御力...

    轻松掌握Java备忘录模式

    Java备忘录模式是一种设计模式,它允许程序在不破坏封装性的前提下,保存和恢复对象的状态。这种模式常用于实现撤销/重做功能,让用户能够恢复到之前的操作状态。备忘录模式由三个主要角色构成:发起人(Originator...

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

    这个例子展示了如何在Java中实现备忘录模式。发起人`Originator`创建备忘录,照料者`Caretaker`保存和传递备忘录,而备忘录`Memento`则存储了`Originator`的状态。当需要恢复状态时,`Originator`从备忘录中获取并...

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

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

    备忘录模式Demo

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

    java设计模式之备忘录模式

    在Java中,备忘录模式的应用可以帮助我们处理复杂业务逻辑中的撤销与重做操作,提高代码的可维护性和可扩展性。 备忘录模式的核心思想是创建一个备忘录对象,该对象存储原对象的内部状态,而原对象则可以无顾虑地...

    【Java设计模式】备忘录模式

    Java中的备忘录设计模式允许开发人员捕获和恢复对象的内部状态,而不违反封装。 ## 二、详细解释及实际示例 ... - 备忘录模式是一种软件设计模式,它提供了将对象恢复到其以前状态(通过回滚撤销)的能力。

    备忘录模式-极客学院-java-课件代码

    在"备忘录模式-极客学院-java-课件代码"这个压缩包中,我们可以期待找到相关的Java代码示例,这些示例可能包括发起人、备忘录和管理者类的实现,以及如何在实际场景中运用备忘录模式的示例。通过学习这些代码,...

    备忘录模式简介和java代码实现

    ementor.getMemeonto(0)); System.out.println("Restored state: " + originator.getState());...在上述Java代码示例中,我们展示了如何创建一个简单的备忘录模式实现,包括创建备忘录、存储备忘录以及恢复状态的过程。

    备忘录模式笔记1

    备忘录模式笔记 备忘录模式(Memento)是一种非常有用的设计模式,它主要用于保存一个对象的某个状态,以便在适当的时候恢复对象。下面我们将对备忘录模式进行详细的解释和分析。 备忘录模式的定义 备忘录模式是...

Global site tag (gtag.js) - Google Analytics