抽象工厂

技术抽象工厂 抽象工厂抽象工厂(Abstract Factory)
Intent
提供一个接口,用于创建相关的对象家族
Class Diagram
抽象工厂模式创建的是对象家族,也就是很多对象而不是一个

抽象工厂

抽象工厂(Abstract Factory)

Intent

提供一个接口,用于创建相关的对象家族

Class Diagram

抽象工厂模式创建的是对象家族,也就是很多对象而不是一个对象,并且这些对象是相关的,也就是说必须一起创建出来。而工厂方法模式只是用于创建一个对象,这和抽象工厂模式有很大的不同。

抽象工厂模式用到了工厂方法模式来创建单一对象抽象工厂中的createProductA()和createProductB()方法都是让子类来实现,这两个方法单独来看就是在创建一个对象,这符合工厂方法模式的定义。

而创建对象的家族这一概念体现在客户中,客户端要通过抽象工厂同时调用两个方法来创建出两个对象,在这里这两个对象就有很大的相关性,客户端需要同时创建出这两个对象。

从高层次来看,抽象工厂使用了组合,即客户组合了抽象工厂,而工厂方法模式使用了继承。

Implementation

公共类AbstractProductA {

}

公共类AbstractProductB {

}

公共类ProductA1扩展了抽象产品{ 0

}

公共类产品2扩展了抽象产品{ 0

}

公共类产品B1扩展了抽象产品B {

}

公共类产品B2扩展了抽象产品B {

}

公共抽象类抽象工厂(

抽象抽象产品a createProducA();

抽象抽象产品b createProducB();

}

公共类混凝土工厂一扩展了抽象工厂

抽象产品创建产品(){ 0

返回新的ProducT a1();

}

abstract ProducB createProducB(){ 0

返回新的ProducT B1();

}

}

公共类混凝土工厂2扩展了抽象工厂

抽象产品创建产品(){ 0

返回新的ProducT a2();

}

abstract ProducB createProducB(){ 0

返回新的ProducT B2();

}

}

公共类客户端{

公共静态void main(String[]参数){ 0

抽象工厂抽象工厂=新的具体工厂1();

抽象工厂。createProducA();

abstractProducB ProducB=抽象工厂。createProducB();

//用productA和productB做点什么

}

}

JDK

javax。XML。解析器RS。documentbuilderfactory

javax。XML。转变。变压器厂

javax.xml.xpath.XPathFactory

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/79563.html

(0)

相关推荐

  • 苹字怎么组词,“苹”字的组词及词组的意思

    技术苹字怎么组词,“苹”字的组词及词组的意思苹píng pēng 中文解释 英文翻译 苹的中文解释
    以下结果由汉典提供词典解释
    苹 píng
    部首笔画
    部首:艹 部外笔画:5 总笔画:8
    五笔86:

    生活 2021年10月31日
  • 如何掌握static关键字

    技术如何掌握static关键字本篇内容介绍了“如何掌握static关键字”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!“

    攻略 2021年10月22日
  • see过去分词,see的过去式和过去分词

    技术see过去分词,see的过去式和过去分词see的过去式: saw see的过去分词: seen seesee过去分词,读音:英 [siː] 美 [siː] v. 看见;明白;了解;经历;设想 n. 主教教区;主角权限

    生活 2021年10月24日
  • 怎样理解JavaScript 正则表达式

    技术怎样理解JavaScript 正则表达式今天就跟大家聊聊有关怎样理解JavaScript 正则表达式,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1. 正则表

    攻略 2021年11月5日
  • MySQL中CURRENT_TIMESTAMP的使用方式是什么

    技术MySQL中CURRENT_TIMESTAMP的使用方式是什么这篇文章主要讲解了“MySQL中CURRENT_TIMESTAMP的使用方式是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢

    攻略 2021年11月25日
  • VSCode中怎么搭建和配置PyQt5环境

    技术VSCode中怎么搭建和配置PyQt5环境本篇文章给大家分享的是有关VSCode中怎么搭建和配置PyQt5环境,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看

    攻略 2021年11月26日