设计模式之工厂模式代码示例

using System;
namespace NotePadTest{
    interface IFactor{
        IProduct CreateIProduct();
    }
    
    interface IProduct{
        void showMethod();
    }
    
    class BaseProduct : IProduct{
        public void showMethod(){
            Console.Write(this.ToString());
            Console.Read();
        }
        
    }
    
    class ProductA : BaseProduct{
        public new void showMethod(){
            Console.Write(this.ToString() + "new");
            Console.Read();
        }
    }
    
    class ProductB : BaseProduct{
    
    }
    
    class FactorA : IFactor{
        public IProduct CreateIProduct(){
            return new ProductA();
        }
    }
    
    class FactorB : IFactor{
        public IProduct CreateIProduct(){
            return new ProductB();
        }
    }
    
    class EntryPoint{
        public static void Main(string[] args)
        {
            IFactor iFactor = new FactorA();
            IProduct iProduct = (IProduct)iFactor.CreateIProduct();
            iProduct.showMethod();
        }
    }
}

转载于:https://www.cnblogs.com/zhangchenliang/archive/2012/08/22/2650222.html

猜你喜欢

转载自blog.csdn.net/weixin_34110749/article/details/93495203