C#工廠模式-簡單工廠


簡單工廠:

  工廠模式:簡單工廠,工廠方法,抽象工廠三種.   簡單工廠(力求簡潔)

  工廠即為生產東西的地方.在C#也有這種模式,充分利用了面向對象語言的三大特征(多態,繼承),簡單工廠.工廠的功能就是生產,而生產些什么呢?一個工廠可以生產鞋子,生產衣服.它們所處的車間不一樣,所以需要兩個不同的類,這兩個類繼承工廠生產這個功能.

  簡單工廠,之所以成為簡單.即這個工廠所生產的東西是有限的,固定的.因為它只有鞋子,衣服,是具體的.也可以說是簡單工廠的缺點(生產產品固定,要改動case語句),優點(①降低了客戶與產品之間的耦合度,客戶是客戶,工廠是工廠,客戶只需說自己需要什么②實現了代碼的復用,可以少寫點代碼)

  介紹完畢,上干貨

工廠的接口

 

public abstract class IFactory
    {
        //生產 抽象方法
        public abstract void Production();
    }

 

工廠可實現的產品,鞋子,衣服

//生產鞋子
    public class ShoesClass : IFactory
    {
        public override void Production()
        {
            Console.WriteLine("生產鞋子");
        }
    }
public class ClothesClass : IFactory
    {
        public override void Production()
        {
            Console.WriteLine("生產了衣服");
        }
    }

根據不同需求來實現工廠的生產功能

public class Factory
    {
        IFactory f = null;
        public IFactory Create(string type)
        {
            switch (type)
            {
                case "Shoes":
                    f = new ShoesClass();
                    break;
                case "Clothes":
                    f = new ClothesClass();

break;
default: break; } return f; } }

客戶端實現

 class Program
    {
        static void Main(string[] args)
        {
            IFactory f = new Factory().Create("Clothes");
            f.Production();
            Console.ReadKey();
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM