天天看點

C#設計模式(2)——簡單工廠模式(Factory )

C#設計模式(2)——簡單工廠模式(Factory )

我們通過 Factory 建立對象不同的對象。

例如:如果建立一個汽車的接口,通過 工廠Factory 建立實作接口的對象,根據我們的選擇來建立不同的對象。

建立汽車接口

/// <summary>
    /// 簡單工廠模式
    /// </summary>
    public interface IAutoCarMake
    {
        /// <summary>
        /// 建立汽車
        /// </summary>
        void CreateAutoCar();
    }      

建立兩個派生類,分别實作建立不同顔色的兩種汽車

/// <summary>
    /// 紅色小轎車
    /// </summary>
    public class _RedCar: IAutoCarMake
    {
        public void CreateAutoCar()
        {
            Console.WriteLine("生成紅色小轎車");
        }
    }
    /// <summary>
    /// 藍色小轎車
    /// </summary>
    public class _BlueCar : IAutoCarMake
    {
        public void CreateAutoCar()
        {
            Console.WriteLine("生成藍色小轎車");
        }
    }      

通過工廠類生成不同的對象執行個體

/// <summary>
    /// 簡單工廠模式-工廠類
    /// </summary>
    public class Factory
    {
        public IAutoCarMake CreateAutoCar(string flag)
        {
            switch (flag)
            {
                case "red":
                    return new _RedCar();
                case "blue":
                    return new _BlueCar();
            }
            return null;
        }

        static void Main(string[] args)
        {
            IAutoCarMake parents = new Factory().CreateAutoCar("red");

            IAutoCarMake parents = new Factory().CreateAutoCar("blue");

            parents.CreateAutoCar();

            Console.ReadKey();
        }
    }      

posted on 2018-02-26 20:48  夜、微涼 閱讀( ...) 評論( ...) 編輯 收藏

轉載于:https://www.cnblogs.com/wwj1992/p/8475971.html

繼續閱讀