gpt4 book ai didi

java - java中工厂设计模式和抽象工厂设计模式有什么区别?

转载 作者:行者123 更新时间:2023-12-01 22:39:00 30 4
gpt4 key购买 nike

1) 工厂是否由具体工厂类实现,并使用 if else 检查类型并根据类型创建对象? 或者 我们有带有抽象创建方法的接口(interface)工厂 我们在具体工厂类中为每种不同类型的对象实现这个接口(interface),并实例化该特定类型对象的 obj。

2)抽象工厂与工厂有何不同?这只是工厂的工厂吗?

3) 我们如何更改创建特定类型对象的 if else 条件?如果我们删除 if else,那么它会变成抽象工厂吗?

最佳答案

工厂是一整套用于制造对象的技术。

抽象工厂是一个可以为您创建对象的接口(interface)。您无需指定它是如何制作的,工厂的实例有自己的方式来制作特定的对象或对象组。

工厂方法是类上的一种方法,可帮助您创建该类的实例。

您通常不会在工厂中使用 if/else 语句,因为:

  1. 对于抽象工厂,您拥有的工厂实例决定了它的工作方式
  2. 使用工厂方法时,您调用的特定方法决定了您正在制作的东西的类型。

这里有一个很好的跳跃点 - http://en.wikipedia.org/wiki/Creational_pattern

关于java - java中工厂设计模式和抽象工厂设计模式有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26462912/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com