| layout | pattern | |||
|---|---|---|---|---|
| title | Memento | |||
| folder | memento | |||
| permalink | /patterns/memento/ | |||
| categories | Behavioral | |||
| tags |
|
Token
Without violating encapsulation, capture and externalize an object's internal state so that the object can be restored to this state later.
Use the Memento pattern when
- a snapshot of an object's state must be saved so that it can be restored to that state later, and
- a direct interface to obtaining the state would expose implementation details and break the object's encapsulation
