工厂和抽象工厂模式

发布于 2024-10-10 23:41:40 字数 80 浏览 2 评论 0原文

工厂模式如何使用继承和抽象工厂使用组合来将对象返回给客户端?

我首先阅读了设计模式书,上面写着。但根据我的理解,两者都在使用继承。

How the factory pattern is using inheritance and abstract factory using composition to return a object to client?

I read head first design pattern book, that says above statement. But as per my understanding both are using inheritance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

写下不归期 2024-10-17 23:41:40

抽象工厂不使用组合......它仅使用继承。

抽象工厂中的实例返回一个工厂并且可以从所需的类中实例化。

抽象工厂只是工厂设计模式之上的一层。

要了解有关组合的更多信息,请检查 Java 中的 java.io 包。

如果需要实例化 FileReader 类,则必须使用文件对象。

就像 new FileReader(new File("")) 一样。

这称为组合,在抽象工厂中没有使用它

Abstract factory doesn't use composition.. it uses inheritance only.

Instance in Abstract factory returns a factory and from the desired class can be instantiated.

Abstract factory is just a layer above Factory design pattern..

To know more about composition Check java.io package in Java.

If a FileReader class needs to be instantiated a File Object is mandatory.

like new FileReader(new File("")).

This is known as composition and it is no where used in Abstract factory

一影成城 2024-10-17 23:41:40

工厂模式定义了一个用于创建对象的接口,并让子类决定要创建哪些对象(继承)。这样客户端只需要知道他们正在使用的抽象类型。

抽象工厂提供了用于创建产品系列的抽象类型。这种类型的子类定义了这些产品的生产方式。产品子类创建并行的产品系列集。(组合)

Factory Pattern defines an interface for creating objects and lets subclasses decide which objects to be created (inheritence). this way client only needs to know the abstract type they are using.

Abstract Factory provides abstract type for creating family of products. Subclasses of this type define how these products are produced. The product subclasses create parallel sets of product families.(composition).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文