天天看点

设计模式--命令模式(Command)

 Command模式也叫命令模式 ,是行为设计模式的一种。Command模式通过被称为Command的类封装了对目标对象的调用行为以及调用参数,命令模式将方法调用给封装起来了。

Command: 抽象命令类

ConcreteCommand: 具体命令类

Invoker: 调用者

Receiver: 接收者

Client:客户类

优点

1. 降低了系统耦合度

2. 新的命令可以很容易添加到系统中去。

缺点

使用命令模式可能会导致某些系统有过多的具体命令类。

Traders.java

抽象命令类:Command.java

具体命令类1: MineralWaterCommand.java

具体命令类2:IceBlackTeaCommand.java

接收类:Cashier.java

客户类即测试类:

测试结果:

卖矿泉水

卖冰紅茶

----------------

android中的使用:

Thread, Runnable中使用命令模式:

http://www.cnblogs.com/qianxudetianxia/archive/2011/08/13/2135478.html

2015年12月19日22:35:46更新

设计模式虽然增加了类的数量和复杂度,但是使得结构更加清晰,更加高扩展,低冗余。

命令模式定义:

将一个请求封装成一个对象,从而让用户使用不同的请求把客户端参数化,对请求队列或者记录请求日志,以及支持可撤销的操作。

继续阅读