Closed Xenolel closed 9 years ago
Momenteel wordt de interne staat van klassen die memento implementeren blootgegeven wat niet de bedoeling is in memento.
De enige manier die ik ken om dit op te lossen heeft echter interne klassen nodig waarvan ik helemaal niet zeker ben of het wel goed design is:
public class Task { public void setMemento(Object m) { Memento memento = (Memento)m; this.alternativeTask = memento.getAlternativeTask(); ... } public Object createMemento() { return new Memento(alternativeTask, ...); } private class Memento { private Task alternativeTask; public Task getAlternativeTask() { return alternativeTask; } public Memento(Task alternativeTask, ...) { this.alternativeTask = alternativeTask; ... } } }
we gebruiken public inner classes met private getters en private constructor
Momenteel wordt de interne staat van klassen die memento implementeren blootgegeven wat niet de bedoeling is in memento.
De enige manier die ik ken om dit op te lossen heeft echter interne klassen nodig waarvan ik helemaal niet zeker ben of het wel goed design is: