打字猴:1.700470466e+09
1700470466
1700470467 图24-2 完善后的男孩状态类图
1700470468
1700470469 改动很小,增加了一个新的类Memento,负责状态的保存和备份;同时,在Boy类中增加了创建一份备忘录createMemento和恢复一个备忘录resotreMemento,我们先来看Boy类的变化,如代码清单24-3所示。
1700470470
1700470471 代码清单24-3 改进后的男孩状态类
1700470472
1700470473 public class Boy{
1700470474
1700470475 //男孩的状态
1700470476
1700470477 private String state=””;
1700470478
1700470479 //认识女孩子后状态肯定改变,比如心情、手中的花等
1700470480
1700470481 public void changeState(){
1700470482
1700470483 this.state=“心情可能很不好”;
1700470484
1700470485 }
1700470486
1700470487 public String getState(){
1700470488
1700470489 return state;
1700470490
1700470491 }
1700470492
1700470493 public void setState(String state){
1700470494
1700470495 this.state=state;
1700470496
1700470497 }
1700470498
1700470499 //保留一个备份
1700470500
1700470501 public Memento createMemento(){
1700470502
1700470503 return new Memento(this.state);
1700470504
1700470505 }
1700470506
1700470507 //恢复一个备份
1700470508
1700470509 public void restoreMemento(Memento_memento){
1700470510
1700470511 this.setState(_memento.getState());
1700470512
1700470513 }
1700470514
1700470515 }
[ 上一页 ]  [ :1.700470466e+09 ]  [ 下一页 ]