originator.java
来自「java与模式 一书的源码」· Java 代码 · 共 47 行
JAVA
47 行
package com.javapatterns.memento.whiteboxcheckpoints;
import java.util.Vector;
import java.util.Enumeration;
public class Originator
{
private Vector states;
private int index;
/** @link dependency
* @label wide*/
/*#Memento lnkMemento;*/
public Originator()
{
states = new Vector();
index = 0;
}
public Memento createMemento()
{
return new Memento(states, index);
}
public void restoreMemento(Memento memento)
{
states = memento.getStates();
index = memento.getIndex();
}
public void setState(String state)
{
this.states.addElement(state);
index++;
}
public void printStates()
{
System.out.println("Total number of states : " + index);
for(Enumeration e = states.elements(); e.hasMoreElements(); )
{
System.out.println( e.nextElement() );
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?