AbstractFactory抽象工厂模式

项目架构

抽象产品

每一种产品都有一个产品的声明接口。

具体产品

每一个产品下有不同类型的实现,每一个产品都实现对应的产品接口。

抽象工厂

用于创建所有产品的声明接口。

具体工厂

具体的工厂对应产生具体的产品,用于创建这种产品。

客户端类

抽象工厂作为数据成员,其中可以执行各种抽象工厂定义的方法,及各种客户端需要处理的业务。

运行类

首先需要准备配置(具体工厂类),在配置文件中根据当前的需求实例话对应的具体工厂。

在运行时实例化客户端类,并对其传入配置文件(具体工厂类)。

此时客户端就可以根据当前的实际情况运行。


Reference

https://refactoringguru.cn/design-patterns/abstract-factory