记录学习设计模式--简单工厂模式

工厂模式主要的思想是将对象的创建集中在一个工厂中,而需要创建的对象根据指定的标示(switch)来创建出想要的对象,一般来说创建的对象是继承在同一个类下,因为这样的结构会很容易返回一个类的类型最终进行使用。

练习代码

namespace WindowsFormsApplication1
{
    public enum Handle 
    {
        Add,
        Sub
    }
    class HandleFactory
    {
       public static HandleCompute GetCompute(Handle handle)
        {
           HandleCompute handleCom = null;
           switch(handle)
           {
               case Handle.Add :
                   {
                       handleCom = new Add();
                       break;
                   }
               case Handle.Sub:
                   {
                       handleCom = new Sub();
                       break;
                   }
           }
           return handleCom;
        }
    }

    class HandleCompute
    {
        public virtual double GetResult(double a,double b)
        {
            return a + b;
        }
    }

    class Add : HandleCompute
    {
        public override double GetResult(double a, double b)
        {
            return a + b;
        }
    }

    class Sub : HandleCompute
    {
        public override double GetResult(double a, double b)
        {
            return a - b;
        }
    }
}

当想要扩展新的操作的时候就非常简单了

posted on 2016-09-05 15:03  wility  阅读(116)  评论(0编辑  收藏  举报

导航