zoukankan      html  css  js  c++  java
  • 命令模式

        class Program
        {
            static void Main(string[] args)
            {
                命令抽象 点一份汤 = new 煮汤命令();
                命令抽象 来份小炒 = new 炒菜命令();
                服务员 小二 = new 服务员();
                小二.添加命令(点一份汤);
                小二.添加命令(来份小炒);
                小二.取消命令(点一份汤);
                小二.通知后厨();
                Console.ReadKey();
            }
    
        }
        class 服务员
        {
            List<命令抽象> 命令 = new List<命令抽象>();
            public void 添加命令(命令抽象 客户需求)
            {
                命令.Add(客户需求);
            }
            public void 取消命令(命令抽象 客户需求)
            {
                if (命令.Contains(客户需求))
                {
                    命令.Remove(客户需求);
                }
                else
                {
                    Console.WriteLine("客官你没有下过这个单");
                }
            }
            public void 通知后厨()
            {
                foreach (var v in 命令)
                {
                    v.执行通知命令();
                }
            }
        }
        class 煮汤命令 : 命令抽象
        {
            public override void 执行通知命令()
            {
                Console.WriteLine("后厨厨师开始煮汤啦");
                base.厨师.煮汤();
            }
        }
        class 炒菜命令 : 命令抽象
        {
            public override void 执行通知命令()
            {
                Console.WriteLine("后厨厨师小炒一份");
                base.厨师.炒菜();
            }
        }
        abstract class 命令抽象
        {
            protected 厨师 厨师;
            public 命令抽象()
            {
                厨师 = new 厨师();
            }
            public abstract void 执行通知命令();
        }
        class 厨师
        {
            public void 炒菜()
            {
                Console.WriteLine("开始炒菜");
            }
            public void 煮汤()
            {
                Console.WriteLine("开始煮汤");
            }
        }
  • 相关阅读:
    解析iscroll-小demo
    iscroll的理解
    jquery代码小片段
    jQuery的性能优化
    事件代理
    数组方式使用jQuery对象
    循环时的dom操作
    JavaScript中的ajax(二)
    jQuery与ajax的应用(一)
    表单应用
  • 原文地址:https://www.cnblogs.com/smailxiaobai/p/3637672.html
Copyright © 2011-2022 走看看