首页 > 代码库 > DesignPattern_Creational_FactoryMethod

DesignPattern_Creational_FactoryMethod

using System.Reflection;namespace DesignPattern.Creational.FactoryMethod{    public class Product { }    public class ProductA : Product { }    public class ProductB : Product { }    public abstract class Factory    {        public static Factory ChooseFactory(string name)        {            return Assembly.Load("DesignPattern.Creational")                .CreateInstance(string.Format("DesignPattern.Creational.FactoryMethod.{0}", name)) as Factory;        }        public abstract Product GetProduct();    }    public class FactoryA:Factory{        public override Product GetProduct()        {            return new ProductA();        }    }    public class FactoryB : Factory    {        public override Product GetProduct()        {            return new ProductB();        }    }}

 

DesignPattern_Creational_FactoryMethod