标签:style blog http color os 使用 ar strong 2014
1 先定义一个通用命令接口: 2 /** 3 * 命令接口 4 * @author Apache_xiaochao 5 * 6 */ 7 public abstract class Command { 8 9 protected Receiver receiver; //命令接收者 10 11 /** 12 * 设置命令的接收者 13 * @param receiver 14 */ 15 public Command(Receiver receiver) { 16 super(); 17 this.receiver = receiver; 18 } 19 20 /** 21 * 命令执行函数 22 */ 23 public abstract void execute(); 24 }
1 定义具体的开机命令(这里使用了通用类名,实际中可以替换成更加直观的类名): 2 /** 3 * 具体的命令 4 * @author Apache_xiaochao 5 * 6 */ 7 public class ConcreteCommand extends Command { 8 9 /** 10 * 设置命令的接收者 11 * @param receiver 12 */ 13 public ConcreteCommand(Receiver receiver) { 14 super(receiver); 15 // TODO Auto-generated constructor stub 16 } 17 18 @Override 19 public void execute() { 20 //命令的主体 ,命令本身不去执行具体的操作,而是给命令的接收者一个通知,具体操作由命令的接收者去做 21 receiver.doSomething(); 22 } 23 24 }
1 定义开机组件(这里使用了通用类名,实际中可以替换成更加直观的类名): 2 /** 3 * 这是一个命令接收者,负责执行命令 4 * @author Apache_xiaochao 5 * 6 */ 7 public class Receiver { 8 9 /** 10 * 开机函数 11 */ 12 public void doSomething(){ 13 System.out.println("命令接收者:Windows 正在启动..."); 14 } 15 }
1 定义用户类: 2 /** 3 * 客户类,创建一个命令,并设置命令的接收者 4 * @author Apache_xiaochao 5 * 6 */ 7 public class Client { 8 9 /** 10 * 创建一个命令,并设置命令的接收者 11 */ 12 public Command createCommand(){ 13 Receiver receiver = new Receiver(); 14 //创建一条命令,并指定命令的接收者 15 Command command = new ConcreteCommand(receiver); 16 return command; 17 } 18 }
1 定义开机键与开机组件之间的线路(这里使用了通用类名,实际中可以替换成更加直观的类名): 2 /** 3 * 命令传递类 4 * @author Apache_xiaochao 5 * 6 */ 7 public class Invoker { 8 9 private Command command; 10 11 /** 12 * 通知命令接收者执行命令 13 */ 14 public void notifyReceiver(){ 15 command.execute(); 16 } 17 /** 18 * 获取命令 19 * @param command 20 */ 21 public void setCommand(Command command) { 22 this.command = command; 23 } 24 }
1 public class Driver { 2 public static void main(String[] args) { 3 //用户按下开机键 4 Client client = new Client(); 5 Command command = client.createCommand(); //客户端创建一条命令 6 //通信线路传递命令 7 Invoker invoker = new Invoker(); 8 invoker.setCommand(command); //获取用户创建的命令 9 invoker.notifyReceiver(); //传递命令,通知开机组件,有人要开机 10 } 11 }
标签:style blog http color os 使用 ar strong 2014
原文地址:http://www.cnblogs.com/xiaochao-cs-whu/p/3960483.html