【发布时间】:2020-12-01 04:48:54
【问题描述】:
我知道这个问题已经被问过很多次了,但是我还有一个很简单的问题,如果一个对象的初始化很简单,那么使用工厂方法的目的是什么。
Interface Animal{
eat();
}
class Dog implements Animal{
public void eat(){System.out.println("dog eat");}
}
假设我有一个具体的 Cat 类和 fish 类实现 Animal 接口。
那么在这种情况下,是否有必要制作 3 工厂来创造动物?我想我们只在初始化困难的时候才使用工厂方法。
【问题讨论】:
-
工厂将客户端与具体实现分离。松散耦合是目的。
-
@jaco0646 但是在这种情况下,客户会与工厂耦合,而混凝土动物也会与工厂耦合,我没有看到工厂如何减少耦合。
-
工厂模式是什么意思?有人说Factory Pattern,其实并没有什么设计模式叫Factory Pattern。在设计模式中,有Factory Method、Abstract Factory等类似名称。你是什么意思?
-
@AliSoltani 我的意思是工厂方法,我会编辑帖子
-
这能回答你的问题吗? Applicability for the Factory Method Pattern
标签: design-patterns factory-pattern