设计模式之工厂方法模式
程序员文章站
2024-01-05 17:18:46
...
工厂方法模式在简单工厂模式的基础上做了改进,将创建产品的操作放在了具体的子类中,消除了增加新产品时对原始工厂的修改,维护了开闭原则。
实现方法:
首先定义所有产品的公共父类(接口)
public interface Car {
void run();
}
定义产品类
class Benz implements Car {
@Override
public void run() {
System.out.println("奔驰在跑");
}
}
class BMW implements Car {
@Override
public void run() {
System.out.println("宝马在跑");
}
}
定义工厂类
public abstract class CarFactory {
public Car createCar();
}
为每一个产品创建工厂
public class BenzFactory extends CarFactory {
public Car createCar(){
return new Benz();
}
}
public class BMWFactory extends CarFactory {
public Car createCar(){
return new BMW();
}
}
创建产品
CarFactory cf = new BenzFactory();
Car c=cf.createCar();
cf = new BMWFactory();
Car b=cf.createCar();
上一篇: mysql数据库多源复制方案