工厂模式是一种用来创建对象的模式,它将对象的创建和使用分离开来,使得代码更加灵活和可扩展。
下面代码中CarFactory是一个工厂类,它根据传入的参数来创建不同类型的Car对象。通过工厂模式,在不改变客户端代码的情况下轻松地添加新的品牌汽车。
java">/*** 创建型模式--工厂模式* 工厂模式是一种用来创建对象的模式,它将对象的创建和使用分离开来,使得代码更加灵活和可扩展** 使用工厂模式来创建汽车*/
public class FactoryMode {// 抽象产品类abstract static class Car {public abstract void drive();}// 具体产品类static class BenzCar extends Car {@Overridepublic void drive() {System.out.println("Drive Benz Car");}}static class BmwCar extends Car {@Overridepublic void drive() {System.out.println("Drive Bmw Car");}}// 工厂类// CarFactory是一个工厂类,它根据传入的参数来创建不同类型的Car对象。通过工厂模式,在不改变客户端代码的情况下轻松地添加新的品牌汽车。static class CarFactory {public static Car createCar(String type) {if ("Benz".equalsIgnoreCase(type)) {return new BenzCar();} else if ("Bmw".equalsIgnoreCase(type)) {return new BmwCar();} else {throw new IllegalArgumentException("Invalid car type");}}}// 使用工厂模式创建汽车public static void main(String[] args) {Car benzCar = CarFactory.createCar("Benz");Car bmwCar = CarFactory.createCar("Bmw");benzCar.drive();bmwCar.drive();}
}