相关疑难解决方法(0)

设计模式:工厂与工厂方法与抽象工厂

我正在从网站上阅读设计模式

在那里我读到了有关工厂,工厂方法和抽象工厂的信息,但它们很混乱,我对定义并不清楚.根据定义

Factory - 创建对象而不将实例化逻辑暴露给客户端,并通过公共接口引用新创建的对象.是Factory Method的简化版本

工厂方法 - 定义用于创建对象的接口,但让子类决定实例化哪个类,并通过公共接口引用新创建的对象.

抽象工厂 - 提供用于创建相关对象族的界面,而无需明确指定其类.

我还查看了关于抽象工厂与工厂方法的其他stackoverflow线程,但是那里绘制的UML图使我的理解更加糟糕.

有谁能告诉我

  1. 这三种模式如何相互不同?
  2. 什么时候用哪个?
  3. 如果可能的话,任何与这些模式相关的java示例?

java language-agnostic design-patterns factory factory-method

164
推荐指数
6
解决办法
8万
查看次数

工厂,抽象工厂和工厂方法

我对这三个术语感到很困惑.

我的理解是:

  • 在工厂模式中,没有混凝土工厂.工厂根据参数构建新对象.

  • 在抽象工厂模式中,有多个混凝土工厂.客户必须明确地创建不同的具体工厂.

是对的吗?

还有什么区别?

此外,什么是工厂方法模式?它与工厂模式相同吗?

design-patterns factory factory-pattern abstract-factory

42
推荐指数
1
解决办法
1万
查看次数