1700478150
public class Invoker{
1700478151
1700478152
//抽象命令的引用
1700478153
1700478154
private AbstractCmd cmd;
1700478155
1700478156
public Invoker(AbstractCmd_cmd){
1700478157
1700478158
this.cmd=_cmd;
1700478159
1700478160
}
1700478161
1700478162
//执行命令
1700478163
1700478164
public boolean execute(String source,String to){
1700478165
1700478166
return cmd.execute(source,to);
1700478167
1700478168
}
1700478169
1700478170
}
1700478171
1700478172
调用者非常简单,只负责把命令向后传递,当然这里也可以进行一定的拦截处理,我们暂时用不到就不做处理了。我们来看场景类是如何描述这个场景的,如代码清单32-18所示。
1700478173
1700478174
代码清单32-18 场景类
1700478175
1700478176
public class Client{
1700478177
1700478178
public static void main(String[]args){
1700478179
1700478180
//定义一个命令,压缩一个文件
1700478181
1700478182
AbstractCmd cmd=new ZipCompressCmd();
1700478183
1700478184
/*
1700478185
1700478186
*想换一个?执行解压命令
1700478187
1700478188
*AbstractCmd cmd=new ZipUncompressCmd();
1700478189
1700478190
*/
1700478191
1700478192
//定义调用者
1700478193
1700478194
Invoker invoker=new Invoker(cmd);
1700478195
1700478196
//我命令你对这个文件进行压缩
1700478197
1700478198
System.out.println(”========执行压缩命令========”);
1700478199
[
上一页 ]
[ :1.70047815e+09 ]
[
下一页 ]