zoukankan      html  css  js  c++  java
  • 职责链模式

        static class Program
        {
            static void Main()
            {
                员工 员工 = new 普通员工();
                员工 主管 = new 员工主管();
                员工 boss = new BOSS();
                员工.设置上级(主管);
                主管.设置上级(boss);
                快递包裹 包裹 = new 快递包裹();
                包裹.价值 = 80040;
                员工.收取快递(包裹);
                Console.ReadKey();
            }
        }
        abstract class 员工
        {
            protected 员工 上级;
            public void 设置上级(员工 员工)
            {
                this.上级 = 员工;
            }
            public abstract void 收取快递(快递包裹 包裹);
        }
        class 普通员工 : 员工
        {
            public override void 收取快递(快递包裹 包裹)
            {
                if (包裹.价值 < 50)
                {
                    Console.WriteLine("这么没价值的我等小虾签收了");
                    包裹.签收();
                }
                else
                {
                    上级.收取快递(包裹);
                }
            }
        }
        class 员工主管 : 员工
        {
            public override void 收取快递(快递包裹 包裹)
            {
                if (包裹.价值 < 500)
                {
                    Console.WriteLine("还没500块的我签收了");
                    包裹.签收();
                }
                else
                {
                    上级.收取快递(包裹);
                }
            }
        }
        class BOSS : 员工
        {
            public override void 收取快递(快递包裹 包裹)
            {
                Console.WriteLine("多少钱的我都能收");
                包裹.签收();
            }
        }
        class 快递包裹
        {
            public int 价值 { get; set; }
            public void 签收()
            {
                Console.WriteLine("签收完毕,下班!");
            }
        }
  • 相关阅读:
    const与readonly
    JQuery Tooltipster
    Log4Net使用
    asp.net mvc 4 beta 版已发布
    控件属性
    C# 获取当前路径
    对toLocaleString()、toString()、valueOf()的理解
    靶场练习3CSRF攻击
    计算字符串长度
    Android ListView 自定义适配器
  • 原文地址:https://www.cnblogs.com/smailxiaobai/p/3643148.html
Copyright © 2011-2022 走看看