首页 > 代码库 > 【设计模式】 工厂方法

【设计模式】 工厂方法

【设计模式】 工厂方法

  1. 由对应的工厂来创建对象

  2. 与简单工厂相比,代码设计复杂度提高了,调用也变得复杂了,但维护成本降低了,每次添加新的类时,只要添加对应的工厂,而不需要修改原有代码。 简单工厂每次添加新的类,需要修改原有创建对象的方法。

  3. 更符合开闭原则

  4. 代码  

    public interface IFactory    {        CalBase CreateCal();    }    public class AddFactory : IFactory    {        public CalBase CreateCal()        {            return new CalAdd();        }    }    public class SubFactory : IFactory    {        public CalBase CreateCal()        {            return new CalSub();        }    }    public class MulFactory : IFactory    {        public CalBase CreateCal()        {            return new CalMul();        }    }    public class DivFactory : IFactory    {        public CalBase CreateCal()        {            return new CalDiv();        }    }

 

【设计模式】 工厂方法