区别 感觉最直观的区别就是简单工厂只需要设计一个工厂类,工厂方法模式还需要设计一系列工厂标准,即定义接口。虽然工厂方法模式的实现更为繁琐一些,但是其可扩展性更强。 个人看法 但是我觉得工厂方法 做一个抽象类,然后编写多个工厂实现该接口的方式有点鸡肋。 初衷是好的,如果我后续加入新的产品,我就可以不改动原有工厂中的代码,直接实现新的工厂。 但是你工厂的类不就多了?你还要根据不同的产品用不同的工厂,这部分逻辑不是也要落实到代码中去吗?那不是也很麻烦? 反正我是没看出哪里有优点。