码迷,mamicode.com
首页 > 其他好文 > 详细

DesignPattern_Creational_AbstractFactory

时间:2014-11-14 19:22:03      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   io   color   os   sp   for   div   

using System.Reflection;

namespace DesignPattern.Creational.AbstractFactory
{
    public interface IProductA { }
    public interface IProductB { }
    public class Product1A : IProductA { }
    public class Product1B : IProductB { }
    public class Product2A : IProductA { }
    public class Product2B : IProductB { }
    public abstract class AbstractFactory
    {
        public static AbstractFactory ChooseFactory(string name)
        {
            return Assembly.Load("DesignPattern.Creational")
                .CreateInstance(string.Format("DesignPattern.Creational.AbstractFactory.{0}", name)) as AbstractFactory;
        }

        public abstract IProductA GetProductA();
        public abstract IProductB GetProductB();
    }
    public class Factory1 : AbstractFactory
    {
        public override IProductA GetProductA()
        {
            return new Product1A();
        }

        public override IProductB GetProductB()
        {
            return new Product1B();
        }
    }

    public class Factory2 : AbstractFactory
    {
        public override IProductA GetProductA()
        {
            return new Product2A();
        }

        public override IProductB GetProductB()
        {
            return new Product2B();
        }
    }
}

 

DesignPattern_Creational_AbstractFactory

标签:des   style   blog   io   color   os   sp   for   div   

原文地址:http://www.cnblogs.com/rammderek/p/4097749.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!