0%

设计模式笔记(四):创建型-抽象工厂模式

##抽象工厂模式(Abstract Factory Pattern)
####意图
提供一个创建一系列相关或者互相依赖的对象接口,无需指定他们具体类
####主要解决
解决接口选择问题
####何时使用
系统产品多于一个产品族,而系统只消费其中某一族产品
####如何解决
在一个产品族中定义多个产品
####关键代码
在一个工厂里聚合多个同类产品
####实例
假设生产衣服 有商务男装、商务女装、时尚男装、时尚女装等等、都放在各自种类衣柜中。衣柜就承当抽象工厂的作用。其中衣柜中上衣、裤子 都是单独的产品
####优点
当一个产品族中多个对象被设计成一起工作的时候,它能保证客户端始终只使用其中一个产品族 不会乱套
####缺点
产品族扩展困难。要增加一个系列的一个产品 既要在抽象工厂里面加代码又要在具体里面加代码
####使用场景
1:qq换肤2:生成不同操作系统的程序
####注意事项
产品族难维护。等级好扩展

####个人总结:抽象工厂 用来生成工厂 然后来选择具体的产品
####代码地址:https://github.com/xuxianyu/myGitHub/tree/master/DisignPattern/src/main/java/com/xxx/create/abstractfactory