1700470904
1700470905
}
1700470906
1700470907
//恢复一个备忘录
1700470908
1700470909
public void restoreMemento(Originator_originator){
1700470910
1700470911
this.setState(_originator.getState());
1700470912
1700470913
}
1700470914
1700470915
//克隆当前对象
1700470916
1700470917
@Override
1700470918
1700470919
protected Originator clone(){
1700470920
1700470921
try{
1700470922
1700470923
return(Originator)super.clone();
1700470924
1700470925
}catch(CloneNotSupportedException e){
1700470926
1700470927
e.printStackTrace();
1700470928
1700470929
}
1700470930
1700470931
return null;
1700470932
1700470933
}
1700470934
1700470935
}
1700470936
1700470937
增加了clone方法,产生了一个备份对象,需要使用的时候再还原,我们再来看管理员角色,如代码清单24-13所示。
1700470938
1700470939
代码清单24-13 备忘录管理员角色
1700470940
1700470941
public class Caretaker{
1700470942
1700470943
//发起人对象
1700470944
1700470945
private Originator originator;
1700470946
1700470947
public Originator getOriginator(){
1700470948
1700470949
return originator;
1700470950
1700470951
}
1700470952
1700470953
public void setOriginator(Originator originator){
[
上一页 ]
[ :1.700470904e+09 ]
[
下一页 ]