【发布时间】:2011-11-16 05:32:44
【问题描述】:
不能所有的工厂方法都是静态的吗?生产产品的东西是否需要状态?什么时候适合使用实例工厂或静态工厂方法?你能提供区分这两者的例子吗?
【问题讨论】:
-
“一个实例静态方法”是自相矛盾的。请修改您的问题。也许您的意思是“实例工厂方法”。至于您的具体问题,您基本上是在询问“抽象工厂”与“工厂方法”。那必须给你新的关键词。例如,维基百科有 2 篇关于这些设计模式的独立文章。
-
静态工厂方法本质上是命名构造函数,所以是的,它们必须是静态的。我不熟悉实例工厂方法,除非您指的是具有工厂实例方法的抽象工厂模式,但这是一个不同的概念。恕我直言,静态工厂方法是一个不好的名字,会引起混淆,它应该被命名为命名构造方法,清楚地表明它是使用默认 Java 构造函数语法的更强大的替代方案。
标签: java factory-pattern