概念
抽象工厂模式是所有形态的工厂模式中最为抽象和最其一般性的。抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。
工厂模式:要么生产香蕉、要么生产苹果、要么生产西红柿;但是不能同时生产一个产品组。抽象工厂:能同时生产一个产品族。
模式中包含的角色及其职责
- 抽象工厂(Creator)角色
抽象工厂模式的核心,包含对多个产品结构的声明,任何工厂类都必须实现这个接口。 - 具体工厂( Concrete Creator)角色
具体工厂类是抽象工厂的一个实现,负责实例化某个产品族中的产品对象。 - 抽象(Product)角色
抽象模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接口。 - 具体产品(Concrete Product)角色
抽象模式所创建的具体实例对象
案例
class Fruit
{
public:
virtual void

抽象工厂模式是一种设计模式,它允许在不指定具体产品类型的情况下创建产品族。这种模式提供了创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。在模式中,抽象工厂定义了产品族的接口,具体工厂则实现了这些接口,生产出属于同一族的产品。
订阅专栏 解锁全文
247

被折叠的 条评论
为什么被折叠?



