HumanFactory maleHumanFactory = new MaleFactory(); //第一条生产线:男性生产线
HumanFactory femaleHumanFactory = new FemaleFactory(); //第二条生产线:女性生产线
//生产线建立完毕,开始造人
Human maleYellowHuman = maleHumanFactory.createYellowHuman(); //造黄色男性
Human femaleYellowHuman = femaleHumanFactory.createYellowHuman(); //造黄色女性
System.out.println("--生产一个黄色女性--");
femaleYellowHuman.getColor();
femaleYellowHuman.talk();
femaleYellowHuman.getSex();
System.out.println("--生产一个黄色男性--");
maleYellowHuman.getColor();
maleYellowHuman.talk();
maleYellowHuman.getSex();
/*
* ……
*/
}
}
到这里,抽象工厂模式的思路算是理清了,下面看看抽象工厂模式的定义。
2. 抽象工厂模式的定义
抽象工厂模式(Abstract Factory Pattern)是一种比较常用的模式,其定义如下:
Provide an interface for creating families of related or dependent objects without specifying their concrete classes. 即为创建一组相关或相互依赖的对象提供一个接口,而且无须指定它们的具体类。它的通用类图如下: