1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
package NET.worlds.scape; class UndoablSet implements Undoable { private Property prop; private Object obj; UndoablSet(Property prop, Object newObj) { this.prop = prop; this.obj = prop.get(); prop.set(newObj); } @Override public void undo() { this.prop.set(this.obj); } }