备忘录模式很简单,我们首先来看看它的类图:
Original: 这是发起人角色,记录当前时刻内部的状态,负责创建和恢复备份数据。
Memto:备忘录角色, 负责存储发起人内部的状态,在需要的时候提供发起人需要的内部状态
CareTaker: 备忘录管理员角色, 对备忘录进行管理,保存,和提供备忘录。
我们在来看看它的使用方法:
void main(){
Original o = new Original();
CareTaker ct = new CareTaker();
ct.setMento(o.createMento()); // 保存o的当前状态
ct.restoreMemto(ct.getMento());
}
从这里我们可以看出, 在Original 和 CareTaker中都有一个MemTo对象。 这样我们就把Memto备份关系封装起来,不需要对外开放了。