打字猴:1.700469934e+09
1700469934 //你只要把信的内容和收信人地址给他,他会帮你完成一系列的工作
1700469935
1700469936 //定义一个地址
1700469937
1700469938 String address=“Happy Road No.666,God Province,Heaven”;
1700469939
1700469940 //信的内容
1700469941
1700469942 String context=“Hello,It’s me,do you know who I am?I’m your old
1700469943
1700469944 lover.I’d like to……”;
1700469945
1700469946 //你给我发送吧
1700469947
1700469948 hellRoadPostOffice.sendLetter(context,address);
1700469949
1700469950 }
1700469951
1700469952 }
1700469953
1700469954 运行结果是相同的。我们看看场景类是不是简化了很多,只要与ModenPostOffice交互就成了,其他的什么都不用管,写信封啦、写地址啦……都不用关心,只要把需要的信息提交过去就成了,邮局保证会按照我们指定的地址把指定的内容发送出去,这种方式不仅简单,而且扩展性还非常好,比如一个非常时期,寄往God Province(上帝省)的邮件都必须进行安全检查,那我们就很好处理了,如图23-3所示。
1700469955
1700469956
1700469957
1700469958
1700469959 图23-3 扩展后的系统类图
1700469960
1700469961 增加了一个Police类,负责对信件进行检查,如代码清单23-6所示。
1700469962
1700469963 代码清单23-6 信件检查类
1700469964
1700469965 public class Police{
1700469966
1700469967 //检查信件,检查完毕后警察在信封上盖个戳:此信无病毒
1700469968
1700469969 public void checkLetter(ILetterProcess letterProcess){
1700469970
1700469971 System.out.println(letterProcess+“信件已经检查过了……”);
1700469972
1700469973 }
1700469974
1700469975 }
1700469976
1700469977 我们再来看一下封装类ModenPostOffice的变更,它封装了这部分的变化,如代码清单23-7所示。
1700469978
1700469979 代码清单23-7 扩展后的现代化邮局
1700469980
1700469981 public class ModenPostOffice{
1700469982
1700469983 private ILetterProcess letterProcess=new LetterProcessImpl();
[ 上一页 ]  [ :1.700469934e+09 ]  [ 下一页 ]