设计模式之抽象工厂
解释
抽象工厂模式(Abstract Factory Pattern) 围绕一个工厂虚类创建 实体工厂。隔离工厂边变,让其不与实际的类产生依赖关系
类图

优点
隔离了具体类的生成 , 更换一个具体工厂就变得相对容易。所有的具体工厂都实现了抽象工厂中定义的那些公共接口,因此只需改变具体工厂的实例,就可以在某种程度上改变整个软件系统的行为 。
缺点
在添加新的产品对象时,难以扩展抽象工厂来生产新种类的产品,这是因为在抽象工厂角色中规定了所有可能被创建的产品集合,要支持新种类的产品就意味着要对该接口进行扩展,而这将涉及到对抽象工厂角色及其所有子类的修改,显然会带来较大的不便。