C# 原廠模式樣本

來源:互聯網
上載者:User

標籤:西紅柿   rri   馬鈴薯   ota   blog   模式   actor   collect   void   

 

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 原廠模式{    class Program    {        static void Main(string[] args)        {            //初始化做菜的工廠            Creator shreddedPorkWithPotatoesFactory = new ShreddedPorkWithPotatoesFactory();            Creator tomatoScrambledEggsFactory = new TomatoScrambledEggsFactory();            //生產西紅柿炒蛋            Food tomatoScrambleEggs = tomatoScrambledEggsFactory.CreateFoodFactory();            tomatoScrambleEggs.Print();            //生產馬鈴薯肉絲            Food shreddedPorkWithPotatoes = shreddedPorkWithPotatoesFactory.CreateFoodFactory();            shreddedPorkWithPotatoes.Print();            Console.ReadKey();        }    }    /// <summary>    /// 菜抽象類別    /// </summary>    public abstract class Food    {        /// <summary>        /// 抽象方法輸出什麼菜        /// </summary>        public abstract void Print();    }    /// <summary>    /// 做西紅柿炒蛋    /// </summary>    public class TomatoScrambledEggs : Food    {        /// <summary>        /// 重載Food的抽象方法Print        /// </summary>        public override void Print()        {            Console.WriteLine("西紅柿炒蛋已經準備完畢!");        }    }    /// <summary>    /// 做馬鈴薯肉絲    /// </summary>    public class ShreddedPorkWithPotatoes : Food    {        /// <summary>        /// 重載Food的抽象方法Print        /// </summary>        public override void Print()        {            Console.WriteLine("馬鈴薯肉絲已經準備完畢!");        }    }    /// <summary>    /// 抽象工廠類    /// </summary>    public abstract class Creator    {        public abstract Food CreateFoodFactory();    }    /// <summary>    /// 西紅柿炒蛋工廠    /// </summary>    public class TomatoScrambledEggsFactory : Creator    {        /// <summary>        /// 重載建立西紅柿這個菜        /// </summary>        /// <returns></returns>        public override Food CreateFoodFactory()        {            return new TomatoScrambledEggs();        }    }    /// <summary>    /// 馬鈴薯肉絲工廠    /// </summary>    public class ShreddedPorkWithPotatoesFactory:Creator    {        /// <summary>        /// 建立馬鈴薯肉絲這個菜        /// </summary>        /// <returns></returns>        public override Food CreateFoodFactory()        {            return new ShreddedPorkWithPotatoes();        }    }}

 

C# 原廠模式樣本

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.