zoukankan      html  css  js  c++  java
  • 【设计模式】4.建造者模式

    说明:将很多事情,一件一件的按顺序组装形成,StringBuilding就是建造者模式。

    场景:当一个流程由很多功能组成,可以直接使用,然后每个实现就好。

    实现:

     public class Customer
        {
            public void buy()
            {
                //客户来组装1台电脑
                zhihui boss = new zhihui();//老板
                lingjian emp1 = new lingjian_1();//员工1
                boss.gongzuo(emp1);//老板指挥
                zuzhuang zz = emp1.getComputer();//员工1组装
                zz.show();//组装完成
            }
        }
    
        /// <summary>
        /// 组装电脑需要的步骤,这里只组装了cpu,硬盘
        /// </summary>
        public abstract class lingjian
        {
            public abstract void cpu();
            public abstract void disk();
    
            public abstract zuzhuang getComputer();
        }
    
        /// <summary>
        /// 组装的方法
        /// </summary>
        public class zuzhuang
        {
            private IList<string> qingdan = new List<string>();
    
            public void add(string str)
            {
                qingdan.Add(str);
            }
    
            public void show()
            {
                Console.WriteLine("开始组装");
                foreach(string s1 in qingdan)
                {
                    Console.WriteLine(s1+"完成");
                }
            }
        }
    
        /// <summary>
        /// 指挥干活
        /// </summary>
        public class zhihui
        {
            public void gongzuo(lingjian lj)
            {
                lj.cpu();
                lj.disk();
                lj.getComputer();
            }
        }
        public class lingjian_1 : lingjian
        {
            zuzhuang zz = new zuzhuang();
            public override void cpu()
            {
                zz.add("cpu");
            }
    
            public override void disk()
            {
                zz.add("硬盘");
            }
    
            public override zuzhuang getComputer()
            {
                return zz;
            }
        }
  • 相关阅读:
    Encoding
    F Takio与Blue的人生赢家之战
    D FFF团的怒火
    C Golden gun的巧克力
    B 倒不了的塔
    A jubeat
    17230 计算轴承半径
    10686 DeathGod不知道的事情
    10688 XYM-AC之路
    10692 XYM-入门之道
  • 原文地址:https://www.cnblogs.com/laokchen/p/13532847.html
Copyright © 2011-2022 走看看