工厂模式 应该怎么编写使用
时间: 2023-08-21 07:13:26 浏览: 37
工厂模式是一种常见的设计模式,其目的是封装对象的创建过程,使得客户端无需知道创建对象的具体过程,而只需知道如何使用这些对象。下面是一个简单的工厂模式的示例代码:
```java
// 定义一个抽象产品接口
interface Product {
void use();
}
// 定义具体产品1
class ConcreteProduct1 implements Product {
@Override
public void use() {
System.out.println("使用具体产品1");
}
}
// 定义具体产品2
class ConcreteProduct2 implements Product {
@Override
public void use() {
System.out.println("使用具体产品2");
}
}
// 定义一个工厂类
class Factory {
// 静态工厂方法,根据传入的参数返回不同的具体产品对象
public static Product createProduct(int type) {
if (type == 1) {
return new ConcreteProduct1();
} else if (type == 2) {
return new ConcreteProduct2();
} else {
throw new IllegalArgumentException("参数错误");
}
}
}
// 客户端代码
public class Client {
public static void main(String[] args) {
Product product1 = Factory.createProduct(1);
product1.use();
Product product2 = Factory.createProduct(2);
product2.use();
}
}
```
在上面的示例代码中,我们定义了一个抽象产品接口`Product`和两个具体产品类`ConcreteProduct1`和`ConcreteProduct2`,它们都实现了`Product`接口。然后我们定义了一个工厂类`Factory`,其中包含一个静态工厂方法`createProduct`,根据传入的参数返回不同的具体产品对象。最后,在客户端代码中,我们通过调用工厂方法`Factory.createProduct`来创建具体产品对象,并且调用`use`方法来使用这些对象。
在实际开发中,工厂模式可以帮助我们降低代码的耦合度,增加代码的可维护性和可扩展性。