设计模式实战:工厂方法在创建对象时的具体应用案例。
工厂方法(Factory Method)是设计模式中的一种,主要用于对象的创建过程,而不是创建对象本身。它将对象的创建行为延迟到运行时。
以下是一个工厂方法在创建对象时的具体应用案例:
案例:汽车工厂
抽象工厂(Abstract Factory):
- 定义一个接口或基类,比如
CarFactory
。public interface CarFactory {
Car createCar(String brand);
}
- 定义一个接口或基类,比如
具体工厂(Concrete Factory):
- 实现
CarFactory
接口,比如CarElectricityFactory
和CarDieselFactory
。
```java
class CarElectricityFactory implements CarFactory {
@Override
public Car createCar(String brand) {
}return new ElectricCar(brand);
}
class CarDieselFactory implements CarFactory {
@Override
public Car createCar(String brand) {
return new DieselCar(brand);
}
}
```- 实现
客户端(Client):
客户代码不关心具体是哪种汽车,只需要知道如何创建。
public class CarCreationExample {
public static void main(String[] args) {
CarFactory carFactory = new CarElectricityFactory();
// 创建电动汽车
ElectricCar electricCar = carFactory.createCar("Toyota RAV4");
electricCar.start(); // 启动汽车
System.out.println("Created and started an electric vehicle.");
}
}
这样,CarFactory
负责创建具体的汽车类型(电动汽车或柴油车),客户端代码只需要知道如何通过工厂来创建汽车即可。
还没有评论,来说两句吧...