<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      設計模式培訓之八:建造者模式

      摘要: 查看本人文章索引請通過http://www.rzrgm.cn/seesea125/archive/2012/04/17/2453256.html

      一、定義

      將一個復雜對象的構造與它的表示分離,使同樣的構建過程可以創建不同的表示。

      PIC041

      二、應用場景

      當一個產品需要復雜的構造,但是構造過程是穩定的,只是構造的對象有不同表示時,就可以使用建造模式。

      三、代碼實現

      class Product
          {
              IList<string> parts=new List<string>(); 
              public void Add(string part)
              {
                  parts.Add(part);
              }
              public void show()
              {
                  Console.WriteLine("\n產品 創建----");
                  foreach (string part in parts)
                  {
                      Console.WriteLine(part);
                  }
              }
      
          }
      
          internal abstract class Bulider
          {
              public abstract void BulidPartA();
              public abstract void BulidPartB();
              public abstract Product GetResult();
          }
      
          class ConcreteBuilder1:Bulider
          {
               private Product product =new Product();
      
               public override void BulidPartA()
               {
                   product.Add("部件A");
               }
               public override void BulidPartB()
               {
                   product.Add("部件B");
               }
      
               public override Product GetResult()
               {
                   return product;
               }
          }
      
          class ConcreteBuilder2 : Bulider
          {
              private Product product = new Product();
      
              public override void BulidPartA()
              {
                  product.Add("部件X");
              }
              public override void BulidPartB()
              {
                  product.Add("部件Y");
              }
      
              public override Product GetResult()
              {
                  return product;
              }
          }
      
          class Director
          {
               public void Construct(Bulider bulider)
               {
                   bulider.BulidPartA();
                   bulider.BulidPartB();
               }
          }

      客戶端調用:

      Director director = new Director();
                  Bulider b1 = new ConcreteBuilder1();
                  Bulider b2 = new ConcreteBuilder2();
                  director.Construct(b1);
                  Product p1 = b1.GetResult();
                  p1.show();
      
                  director.Construct(b2);
                  Product p2 = b2.GetResult();
                  p2.show();
      
                  Console.Read();

       

      posted @ 2012-06-01 16:17  趙學智  閱讀(918)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 久久热99这里只有精品| 国产精品综合av一区二区国产馆| 国产毛片精品一区二区色| 国产毛片基地| 亚洲国产av剧一区二区三区| 成人综合婷婷国产精品久久蜜臀 | 亚洲另类丝袜综合网| 加勒比中文字幕无码一区| 91区国产福利在线观看午夜| 国产中文字幕精品视频| 亚洲精品久久久久久无码色欲四季| 无码一区二区三区AV免费| 安阳市| 亚洲国产成人无码电影| 亚洲欧美日韩愉拍自拍美利坚| 永靖县| 九九九国产精品成人免费视频| 亚洲另类丝袜综合网| 老女老肥熟国产在线视频 | 国产91丝袜在线播放动漫| 亚洲区综合中文字幕日日| 成人国产精品日本在线观看| 亚洲精品福利一区二区三区蜜桃| 在线看国产精品三级在线| 日韩精品av一区二区三区| 亚洲成色在线综合网站| 欧洲免费一区二区三区视频| 一本大道久久香蕉成人网| 久久免费观看午夜成人网站| 无码AV无码免费一区二区| 中国孕妇变态孕交xxxx| 日韩一区二区三区女优丝袜 | 青青青爽在线视频观看| 国产成人无码综合亚洲日韩| 女子spa高潮呻吟抽搐| 18禁无遮挡啪啪无码网站破解版| 城口县| 国产亚洲av夜间福利香蕉149 | 国内自拍第一区二区三区| 元码人妻精品一区二区三区9 | 国产99久久亚洲综合精品西瓜tv|