1
工厂方法的目的不是帮助获取动态选择的子类的实例,以便您可以不隐式地调用它们的构造函数?为什么在某些情况下为每个子类使用多个工厂类?如果我理解它是正确的,那么每个子类都必须调用相应工厂的方法,所以在这里没有理由使用工厂方法。为什么使用多个工厂类?
工厂方法的目的不是帮助获取动态选择的子类的实例,以便您可以不隐式地调用它们的构造函数?为什么在某些情况下为每个子类使用多个工厂类?如果我理解它是正确的,那么每个子类都必须调用相应工厂的方法,所以在这里没有理由使用工厂方法。为什么使用多个工厂类?
1)您可能有一个分布式应用程序,让不同的开发人员可以提供他们自己的工厂类。
2)它非常适用于使用依赖注入的测试。 3)多个工厂类可以实现不同的算法,但是提供相同类型的数据对象。
经典的NetBeans例如:
JEditorPane.registerEditorKitForContentType允许,因为它已经被预期将有多个 模块试图注册自己的包,以每注册MIME类型的套件 。
1)凌乱的代码作为结果? 2),3)与一个工厂相同 – Sergey 2012-03-22 09:03:34
如何实现3)只有一个工厂类?有很多开关操作员?只是好奇。 – Flot2011 2012-03-22 09:17:26
单一工厂的不同方法,有什么问题? – Sergey 2012-03-22 09:48:28