抽象工厂模式(Abstract Factory)

抽象工厂模式是一种创建型设计模式,提供一个创建一系列相关或互相依赖对象的接口,而无需指定具体的类。

适用场景:

  • 当系统需要独立于产品的创建、组合和表示时。
  • 当系统的产品有多个变体并且需要组合使用时。

示例代码:

bash 复制代码
// AbstractProduct
interface Shape {
    void draw();
}

// ConcreteProducts
class Circle implements Shape {
    @Override
    public void draw() {
        System.out.println("Drawing a Circle");
    }
}

class Square implements Shape {
    @Override
    public void draw() {
        System.out.println("Drawing a Square");
    }
}

// AbstractFactory
interface ShapeFactory {
    Shape createShape();
}

// ConcreteFactories
class CircleFactory implements ShapeFactory {
    @Override
    public Shape createShape() {
        return new Circle();
    }
}

class SquareFactory implements ShapeFactory {
    @Override
    public Shape createShape() {
        return new Square();
    }
}

class Client {
    public static void main(String[] args) {
        ShapeFactory factory = new CircleFactory();
        Shape shape = factory.createShape();
        shape.draw(); // 输出: Drawing a Circle
    }
}
相关推荐
apolloyhl3 天前
抽象工厂模式
抽象工厂模式
weixin_465790916 天前
PLC做配方三轴螺丝机程序 配合流水线使用的三轴吸钉式自动锁螺丝机 (就是用流水线到位信号启动...
抽象工厂模式
Geoking.12 天前
【设计模式】抽象工厂模式(Abstract Factory)详解:一次创建“一整套产品”
设计模式·抽象工厂模式
西幻凌云14 天前
认识设计模式——工厂模式
c++·设计模式·简单工厂模式·抽象工厂模式·工厂模式
阿拉斯攀登17 天前
设计模式:工厂模式概要
java·设计模式·抽象工厂模式
阿闽ooo23 天前
抽象工厂模式实战:用C++打造家具生产系统(附UML图与完整代码)
c++·设计模式·抽象工厂模式·uml
明洞日记23 天前
【设计模式手册022】抽象工厂模式 - 创建产品家族
java·设计模式·抽象工厂模式
虫小宝23 天前
返利软件架构设计:多平台适配的抽象工厂模式实践
java·开发语言·抽象工厂模式
JavaBoy_XJ1 个月前
创建型-抽象工厂模式
抽象工厂模式
SadSunset1 个月前
(15)抽象工厂模式(了解)
java·笔记·后端·spring·抽象工厂模式