备忘录模式:在不破坏封装性前提下,捕获一个对象内的全部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。
某个类的实例A对象有一系统的属性需要保存,此时由一个保存这些数据的类的实例B进行保存,再由一个管理类的实例C来进行管理,当A需要恢复时,C就从B中取出A先前保存的数据覆盖A现有的数据。虽然有点绕应该还是说明白了。
书中简单代码如下:
适用场合
备忘录模式比较适用于功能比较复杂的,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属性中的一小部分。
缺点
当需要保存的数据量很大时,在资源消耗上比较大,此种模式非常内存。