首页 > 代码库 > 第二十五讲:命令模式

第二十五讲:命令模式

技术分享

技术分享

技术分享

技术分享

Command:Command.

Client:MainClass

技术分享

对于每一个行为都创建一个Command的实现子类:AppleCommand.

//命令类必须包含调用方,是谁在卖,是Peddler在卖.所以命令类需要持有Peddler的引用.

Invorker:执行Command对象.被调用者:Peddler,商贩被调用,所以需要持有一个Peddler的引用.


实现了使用一个专门的类Command对这种调用过程加以封装.使用命令类除了可以对以前的调用加以封装还可以添加额外的功能.


希望有一个类Receiver.小商贩赚了一些钱了,不想自己动手了,他可以请一个服务员:waiter.帮手.

Receiver:Receiver(waiter)里面有action()方法,其实action()方法是执行Command的方法.Receiver接受一个命令.

方案二是通过命令Command的实现类调用sail()方法.所以方案三现在是由waiter来执行一个命令.所以方案三是客户跟你请的服务员直接打交道,给他发出一个命令.

 

第二十五讲:命令模式