设计模式:工厂与工厂方法与抽象工厂
我正在从网站上阅读设计模式
在那里我读到了有关工厂,工厂方法和抽象工厂的信息,但它们很混乱,我对定义并不清楚。根据定义
Factory - 创建对象而不将实例化逻辑暴露给客户端,并通过公共接口引用新创建的对象。是Factory Method的简化版本
工厂方法 - 定义用于创建对象的接口,但让子类决定实例化哪个类,并通过公共接口引用新创建的对象。
抽象工厂 - 提供用于创建相关对象族的界面,而无需明确指定其类。
我还查看了关于抽象工厂与工厂方法的其他stackoverflow线程,但是那里绘制的UML图使我的理解更加糟糕。
有谁能告诉我
这三种模式如何相互不同?
什么时候用哪个?
如果可能的话,任何与这些模式相关的java示例?
慕神8447489
呼唤远方