本文与作者原文有一定的偏差,其中加入了一部分是个人看法,详细请查看作者原文。***
原文连接http://www.dofactory.com/Patterns/PatternCommand.aspx
命令模式意图:
GOF 在《设计模式》一书中阐述其意图:“将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可取消的操作。”这里所谓的“不同的请求”也既意味着请求可能发生的变化,是一个可能扩展的功能点。
命令模式UML图:
Command模式将一个请求封装为一个对象,从而使你可以使用不同的请求对客户进行参数化。
简单示例: Client
1using System; 2using System.Collections.Generic; 3using System.Text; 4 5namespace DesignPattern.Command 6{ 7 class Program 8 { 9 static void Main(string[] args) 10 { 11 // 创建receiver、command和invoker 12 Receiver receiver = new Receiver(); 13 14 //根据多态,父类的引用指向子类对象 15 Command command = new ConcreteCommand(receiver); 16 Invoker invoker = new Invoker(); 17 18 //设置和执行命令 19 invoker.SetCommand(command); 20 invoker.ExecuteCommand(); 21 22 Console.Read(); 23 } 24 } 25} 26
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索command
, 命令
, 设计模式
, 模式
, 一个
, receiver
Command模式
command pattern、command命令、红色命令 red command、command prompt 命令、linux command命令,以便于您获取更多的相关知识。
时间: 2024-10-03 01:10:20