抽象工厂

技术抽象工厂 抽象工厂抽象工厂(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)

相关推荐

  • Android事件分发机制

    技术Android事件分发机制 Android事件分发机制原文链接:https://juejin.im/post/5eb3e0d6f265da7c002028cd这次说下Android中的事件分发机制从

    礼包 2021年12月7日
  • 怎么理解MySQL的innodb_flush_method

    技术怎么理解MySQL的innodb_flush_method这篇文章主要讲解了“怎么理解MySQL的innodb_flush_method”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一

    攻略 2021年11月19日
  • 舍瑟而作,子路曾皙冉有公西华侍坐实词

    技术舍瑟而作,子路曾皙冉有公西华侍坐实词《子路曾皙冉有公西华侍坐》里面的重点实词如下舍瑟而作:
    1、居则曰:居,闲居,平时在家  
    2、摄乎大国之间:摄,夹、迫近   
    3、加之以师旅:加,加到……上   
    4、比及三年

    生活 2021年10月30日
  • 怎么在Ubuntu 18.04服务器上安装TensorFlow

    技术怎么在Ubuntu 18.04服务器上安装TensorFlow小编给大家分享一下怎么在Ubuntu 18.04服务器上安装TensorFlow,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读

    攻略 2021年11月18日
  • microsoft.netframework有病毒吗(microsoftnetframework有害处吗)

    技术Microsoft .NET Framework漏洞是怎么样的这篇文章给大家介绍Microsoft .NET Framework漏洞是怎么样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。0x0

    攻略 2021年12月21日
  • 第二篇Scrum冲刺博客

    技术第二篇Scrum冲刺博客 第二篇Scrum冲刺博客1
    1.1每天举行站立式会议
    由于我们是不同班而且有男生和女生,所以大家都很难抽出时间参加站立式会议,所以我们改为微信会议1.2昨天已完成工作成员

    礼包 2021年11月24日