打字猴:1.70046321e+09
1700463210
1700463211 //给出计划
1700463212
1700463213 super.rg.plan();
1700463214
1700463215 }
1700463216
1700463217 }
1700463218
1700463219 页面变更也是比较频繁发生的,定义一个删除页面的命令DeletePageCommand类,如代码清单15-9所示。
1700463220
1700463221 代码清单15-9 删除页面的命令
1700463222
1700463223 public class DeletePageCommand extends Command{
1700463224
1700463225 //执行删除一个页面的命令
1700463226
1700463227 public void execute(){
1700463228
1700463229 //找到页面组
1700463230
1700463231 super.pg.find();
1700463232
1700463233 //删除一个页面
1700463234
1700463235 super.rg.delete();
1700463236
1700463237 //给出计划
1700463238
1700463239 super.rg.plan();
1700463240
1700463241 }
1700463242
1700463243 }
1700463244
1700463245 Command抽象类可以有N个子类,如增加一个功能命令(AddFunCommand),删除一份需求命令(DeleteRequirementCommand)等,这里就不再描述了,只要是由客户产生、时常性的行为都可以定义为一个命令,其实现类都比较简单,读者可以自行扩展。
1700463246
1700463247 客户发送的命令已经确定下来,我们再看负责人Invoker,如代码清单15-10所示。
1700463248
1700463249 代码清单15-10 负责人
1700463250
1700463251 public class Invoker{
1700463252
1700463253 //什么命令
1700463254
1700463255 private Command command;
1700463256
1700463257 //客户发出命令
1700463258
1700463259 public void setCommand(Command command){
[ 上一页 ]  [ :1.70046321e+09 ]  [ 下一页 ]