设计模式之命令(command)

 

public class CommandPattern {
	
	abstract class Command{
		Receiver receiver;
		public Command(Receiver receiver){
			this.receiver = receiver;
		}
		protected abstract void execute();
	}
	
	class ConcreteCommand extends Command{
		public ConcreteCommand(Receiver receiver) {
			super(receiver);   
		}
		@Override
		protected void execute() {
			receiver.action();
		}
	}
	//接收者,命令的具体内容
	class Receiver{
		public void action(){
			System.out.println("execute action method...");
		}
	}
	//调用命令并执行
	class Invoker{
		Command command;
		public Invoker(Command command){
			this.command = command;
		}
		
		public void executeCommand(){
			command.execute();
		}
	}
	
	public static void main(String[] args){
		CommandPattern cp = new CommandPattern();
		ConcreteCommand cc = cp.new ConcreteCommand(cp.new Receiver());
		Invoker invoker = cp.new Invoker(cc);
		invoker.executeCommand();
	}
}

 http://www.360doc.com/content/10/0707/13/1720440_37423392.shtml

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值