画出一个简单工厂类图
时间: 2024-06-28 19:01:12 浏览: 172
23个设计模式类图
在面向对象的设计中,工厂模式是一种创建型设计模式,用于隐式地将对象的创建过程封装起来,使客户端无需关心实例化哪一种具体产品。一个简单的工厂类图通常包括以下几个主要元素:
1. **抽象工厂(Abstract Factory)**:定义了一个接口或抽象类,提供了一组方法来创建一系列相关或相互依赖的对象。它关注的是产品的系列,而不是特定的产品。
2. **具体工厂(Concrete Factory)**:实现抽象工厂接口,负责生产具体类型的产品。每个具体工厂通常对应于一个产品线。
3. **产品接口(Product Interface)**:定义了产品系列的通用行为或属性。例如,如果你正在设计图形组件,可能有一个`Shape`接口,下有`Circle`, `Rectangle`, `Triangle`等子类。
4. **产品(Concrete Product)**:实现了产品接口的具体实例,由工厂创建。这些是客户端真正使用的对象。
5. **客户端(Client)**:依赖于工厂来获取和使用产品。客户端并不直接与产品交互,而是通过工厂间接操作。
简单工厂类图的类图可能会长这样:
```
+-------------------+
| Abstract Facto |
| |
+-------------------+
|
V
+-------------------+
| Concrete Factory A |
+-------------------+
|
V
+-------------------+
| Concrete Factory B |
+--+
| Shape Interface |
+-------------------+
|
V
+-------------------+
| Circle |
+-------------------+
|
V
+-------------------+
| Rectangle |
+-------------------+
|
V
+--+
```
阅读全文