应用场景
抽象工厂模式,英文名Abstract Factory Pattern
抽象工厂模式是工厂模式的一种升级版本,它能够支持更为复杂的业务
抽象工厂可以生产多种产品,而不再只是生产一种产品
实现代码
//产品A
abstract public class ProductA {
}
public class ProductA1 extends ProductA {
}
public class ProductA2 extends ProductA {
}
//产品B
//注意,产品A和产品B是两种不同性质的东西,不属于同一个基类
abstract public class ProductB {
}
public class ProductB1 extends ProductB {
}
public class ProductB2 extends ProductB {
}
//工厂类,同时创建A和B两种产品
abstract public class Factory {
abstract public ProductA createProductA();
abstract public ProductB createProductB();
}
//生产一系列的产品组合
public class Factory1 extends Factory {
@Override
public ProductA1 createProductA() {
return null;
}
@Override
public ProductB1 createProductB() {
return null;
}
}
//生产二系列的产品组合
public class Factory2 extends Factory {
@Override
public ProductA2 createProductA() {
return null;
}
@Override
public ProductB2 createProductB() {
return null;
}
}