打字猴:1.700463707e+09
1700463707 //定义一个子类的全局共享变量
1700463708
1700463709 protected final Receiver receiver;
1700463710
1700463711 //实现类必须定义一个接收者
1700463712
1700463713 public Command(Receiver_receiver){
1700463714
1700463715 this.receiver=_receiver;
1700463716
1700463717 }
1700463718
1700463719 //每个命令类都必须有一个执行命令的方法
1700463720
1700463721 public abstract void execute();
1700463722
1700463723 }
1700463724
1700463725 在Command父类中声明了一个接收者,通过构造函数约定每个具体命令都必须指定接收者,当然根据开发场景要求也可以有多个接收者,那就需要用集合类型。我们来看具体命令,如代码清单15-23所示。
1700463726
1700463727 代码清单15-23 具体的命令
1700463728
1700463729 public class ConcreteCommand1 extends Command{
1700463730
1700463731 //声明自己的默认接收者
1700463732
1700463733 public ConcreteCommand1(){
1700463734
1700463735 super(new ConcreteReciver1());
1700463736
1700463737 }
1700463738
1700463739 //设置新的接收者
1700463740
1700463741 public ConcreteCommand1(Receiver_receiver){
1700463742
1700463743 super(_receiver);
1700463744
1700463745 }
1700463746
1700463747 //每个具体的命令都必须实现一个命令
1700463748
1700463749 public void execute(){
1700463750
1700463751 //业务处理
1700463752
1700463753 super.receiver.doSomething();
1700463754
1700463755 }
1700463756
[ 上一页 ]  [ :1.700463707e+09 ]  [ 下一页 ]