首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只有一种方法的抽象工厂仍然是抽象工厂吗?

只有一种方法的抽象工厂仍然是抽象工厂吗?
EN

Stack Overflow用户
提问于 2022-09-07 23:13:31
回答 1查看 35关注 0票数 1

抽象工厂通常构造一个相关对象的“系列”,每个对象都对各自的抽象进行分类。示例这里可以构造植物和植物采摘器;OrangeFactory可以构造OrangesOrangePickersAppleFactory可以构造ApplesApplePickers

但是,如果这个家族只有一个抽象,它还会是一个抽象的工厂吗?考虑:

代码语言:javascript
复制
interface PlantFactory {
  Plant makePlant();
}

public class AppleFactory implements PlantFactory {
  Plant makePlant() {
    return new Apple();
  }
}

这仍然是一个抽象工厂的例子,还是别的什么东西?在工厂、抽象工厂或工厂方法的例子中,我从未见过这样的情况。然而,它似乎仍然是有用的。这种设计模式有什么内在的问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-08 00:20:33

是。抽象工厂的主要目标基本上是对工厂家族进行抽象,在这种情况下,这些工厂创建多少不同的对象类型并不是一个主要因素。

例如(一如既往地简化),可以使用来自抽象工厂模式Wiki文章的图:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73642272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档