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); } }