通常,Memento模式用于实现回滚/保存点支持。例如,我可能想在某个时间点标记对象的状态,做一些工作,然后决定将该对象恢复到被标记的点。
Memento模式的实现可以使用序列化,这将涉及将对象的内容保存到byte []中并保存在内存中或写入磁盘。恢复时,将从序列化副本中重建对象的内容。
相反,我可以通过在内存中克隆对象并保留对副本的引用,然后在对象需要还原时将状态复制回去来实现Memento模式。此方法不使用序列化。

通常,Memento模式用于实现回滚/保存点支持。例如,我可能想在某个时间点标记对象的状态,做一些工作,然后决定将该对象恢复到被标记的点。
Memento模式的实现可以使用序列化,这将涉及将对象的内容保存到byte []中并保存在内存中或写入磁盘。恢复时,将从序列化副本中重建对象的内容。
相反,我可以通过在内存中克隆对象并保留对副本的引用,然后在对象需要还原时将状态复制回去来实现Memento模式。此方法不使用序列化。