工厂方法对比简单工厂再次把代码修改的更加方便扩展,如果要加一个其他运算的话在简单工厂里要先去添加某运算方法的功能类,再去加相关的工厂类,加case语句去判断,这是需要去修改原有的类的,这就相当于不但对扩展开放了,对修改也开放了,违背了开放-封闭原则,现在我们有了工厂方法模式,根据依赖倒转原则,我们把工厂类抽象出一个接口,并且只有一个类,那就是创建抽象产品的工厂方法,一个简单工厂模式的工厂类变成了一个工厂的抽象接口和多个具体生成对象的工厂,现在我们要想添加别的运算功能的话,只需要添加这个功能的运算类和相应的工厂类就可以了,就不需要更改原有的工厂类了。