写出一个简单工厂模式示例
时间: 2023-06-23 19:50:30 浏览: 87
好的,下面是一个简单的工厂模式示例:
假设我们有三个类:`Product`、`ConcreteProductA`、`ConcreteProductB`,其中`ConcreteProductA`和`ConcreteProductB`是`Product`的具体实现。
首先,我们定义一个工厂类`Factory`,该类有一个静态方法`createProduct`,该方法根据不同的参数创建不同的产品对象。
```java
public class Factory {
public static Product createProduct(String type) {
if (type.equals("A")) {
return new ConcreteProductA();
} else if (type.equals("B")) {
return new ConcreteProductB();
} else {
throw new IllegalArgumentException("Unknown product type: " + type);
}
}
}
```
这里我们使用了简单的字符串参数来区分不同的产品类型。
接下来,我们可以使用工厂类来创建不同的产品对象:
```java
public class Client {
public static void main(String[] args) {
Product productA = Factory.createProduct("A");
Product productB = Factory.createProduct("B");
}
}
```
这样,我们就可以通过工厂类来创建不同的产品对象,而不需要直接调用具体产品类的构造方法。这样做的好处是,我们可以将产品创建的过程与客户端代码分离,从而提高代码的可维护性和可扩展性。
阅读全文