版权声明:转载请注明出处: https://blog.csdn.net/qq_21687635/article/details/85004953
模式定义
抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。
下图是该模式的类图:
一个生动的例子
工厂接口:
public interface PizzaIngredientFactory {
public Dough createDough();
public Clams createClams();
}
工厂实现类:
public class ChicagoPizzaIngredientFactory implements PizzaIngredientFactory {
@Override
public Dough createDough() {
return new ThickCrustDough();
}
@Override
public Clams createClams() {
return new FrozenClams();
}
}
工厂实现类:
public class NYPizzaIngredientFactory implements PizzaIngredientFactory {
@Override
public Dough createDough() {
return new ThinCrustDough();
}
@Override
public Clams createClams() {
return new FreshClams();
}
}
参考
- Head First 设计模式[书籍]