第六章 抽象工厂模式 博客分类: Java设计模式
程序员文章站
2024-03-24 21:25:34
...
1。抽象工厂模式(别名:配套)
提供一个创建一系列(相互依赖)对象的接口,而无需指定它们具体的类。
2.概述
当系统准备为用户提供一系列相关的对象,又不想让用户代码和创建这些对象的类形成耦合时,就可以使用抽象工厂方法模式来设计系统。抽象工厂模式的关键是在一个抽象类或接口中定义若干个抽象方法,这些抽象方法分别返回某个类的实例,该抽象类或接口让其子类或实现该接口的类重写这些抽象方法,为用户提供一系列相关的对象。
3.抽象工厂模式-结构
- 抽象产品(Prodcut)
- 具体产品(ConcreteProduct)
- 抽象工厂(AbstractFactory)
- 具体工厂(ConcreteFactory)
4.抽象工厂模式-场景描述
雅戈尔品牌和杰克琼斯提供西服套装(上衣+裤子)和牛仔套装(上衣+裤子)的生产。
5.抽象工厂模式-场景分析
- 抽象产品:
上衣(UpperClothes)
裤子(Trousers) - 具体产品:
西服上衣(WestrnUpperClothes)
牛仔上衣(CowboyUpperClothes)
西服裤子(WesternTrousers)
牛仔裤子(CowboyTrousers) - 抽象工厂
衣服生产:ClothesFactory - 具体工厂
雅戈尔牌子生产:YoungorClothesFactory
杰克琼斯生产:JackClothesFactory
6.优点
- 抽象工厂模式可以为用户创建一系列相关的对象,使得用户和创建这些对象的类脱耦
- 使用抽象工厂模式可以方便的为用户配置一系列对象。用户使用不同的具体工厂就能得到一组相关的对象,同时也能避免用户混用不同系列中的对象
- 在抽象工厂模式中,可以随时增加“具体工厂”为用户提供一组相关的对象。
推荐阅读
-
第一章 设计模式与简介 博客分类: J2EEJava设计模式
-
第五章 工厂方法模式 博客分类: Java设计模式
-
第七章 策略模式 博客分类: Java设计模式 模式策略模式
-
第八章 装饰模式 博客分类: Java基础Java设计模式 装饰模式java模式
-
第六章 抽象工厂模式 博客分类: Java设计模式
-
第三章 单例模式 博客分类: J2EEJava基础Java设计模式
-
第六章 抽象工厂模式 博客分类: Java设计模式
-
第二章 面向对象的几个基本原则 博客分类: J2EEJava设计模式设计Java基础
-
第四章 简单工厂模式 博客分类: J2EEJava设计模式
-
第七章 策略模式 博客分类: Java设计模式 模式策略模式