java程序设计开发,设计思想开源框架-创建型模式之抽象工厂模式,提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
抽象工厂模式概述
定义
抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。该模式将对象的创建和使用分离,使得客户端可以在不关心具体实现的情况下创建一组相关的对象。
核心角色
- 抽象工厂(Abstract Factory):定义了创建一组相关产品对象的抽象方法,通常是一个接口或抽象类。
- 具体工厂(Concrete Factory):实现了抽象工厂中的抽象方法,负责创建具体的产品对象。
- 抽象产品族(Abstract Product Family):定义了一组相关产品的接口。
- 具体产品(Concrete Product):实现抽象产品族中的接口,是具体的产品对象。
实际应用案例:跨平台 GUI 组件创建
假设我们要开发一个跨平台的 GUI 应用程序,不同的操作系统(如 Windows、Mac)需要不同的界面组件(如按钮、文本框等)。我们可以使用抽象工厂模式来创建这些组件。
// 抽象产品:按钮
interface Button {
void click();
}
// 具体产品:Windows 按钮
class WindowsButton implements Button {
@Overrid