iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >在什么情况下可以使用web工厂方法
  • 804
分享到

在什么情况下可以使用web工厂方法

2023-06-19 11:06:31 804人浏览 泡泡鱼
摘要

这篇文章主要介绍了在什么情况下可以使用WEB工厂方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇在什么情况下可以使用web工厂方法文章都会有所收获,下面我们一起来看看吧。适用性在下列情况下可以使用Factor

这篇文章主要介绍了在什么情况下可以使用WEB工厂方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇在什么情况下可以使用web工厂方法文章都会有所收获,下面我们一起来看看吧。

适用性

在下列情况下可以使用Factory Method模式:
• 当一个类不知道它所必须创建的对象的类的时候。

当一个类需要创建某种对象却无法事先知道它的类型信息的时候。例如前文提到的应用/文档架构。这个架构的使用者是开发人员,开发的应用也成千上万,架构的提供者当然没有办法知道需要创建对象的类型。可以使用工厂方法模式决定所要创建的对象类型。

这种情况是真不知道。

• 当一个类希望由它的子类来指定它所创建的对象的时候。

如果我们的设计面向的不是通用的架构,只是一个具体的应用场景,那么大多数情况下我们可以知道(至少是知道大部分)需要创建对象的具体类型。但是出于某种考虑(将来的扩展,分散开发的需求等等),仍然希望将创建实际对象的职责交给其子类。

这种情况是装不知道。


• 当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。

这句话很难理解,还是看原文。

classes delegate responsibility to one of several helper subclasses, and
you want to localize the knowledge of which helper subclass is the delegate.

原文前半句中委托的职责并没有明确指出是创建对象的职责,很大的可能是翻译不准确。以下结合实例说明作者的理解,类图如下:

在什么情况下可以使用web工厂方法

我们的例子是图形编辑软件,支持Rect和Circle两种图形,它们都是Shape类的子类。另外,由于某种原因(例如我们希望将来图形可以在不同的操作系统中表示)我们希望将它们的图形的描画功能委托给RectDrawer和CircleDrawer两个帮助子类。如上图所示,由于使用了工厂方法模式创建不同的Drawer子类。关于描画功能具体委托给了哪个Drawer子类的信息都被限制在了具体的图形子类中。

关于“在什么情况下可以使用web工厂方法”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“在什么情况下可以使用web工厂方法”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: 在什么情况下可以使用web工厂方法

本文链接: https://www.lsjlt.com/news/295664.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 在什么情况下可以使用web工厂方法
    这篇文章主要介绍了在什么情况下可以使用web工厂方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇在什么情况下可以使用web工厂方法文章都会有所收获,下面我们一起来看看吧。适用性在下列情况下可以使用Factor...
    99+
    2023-06-19
  • 在什么情况下可以使用web抽象工厂模式
    这篇文章主要讲解了“在什么情况下可以使用web抽象工厂模式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在什么情况下可以使用web抽象工厂模式”吧!适用性在以下情况可以使用Abstract ...
    99+
    2023-06-19
  • 在什么情况下可以使用Singleton模式
    这篇文章主要介绍“在什么情况下可以使用Singleton模式”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“在什么情况下可以使用Singleton模式”文章能帮助大家解决问题。适用性在下面的情况下可以...
    99+
    2023-06-19
  • Java线程在什么情况下可以终止
    目录线程结束的三个原因具体分析1、使用标志位推出线程2、使用stop方法强制终止线程3、使用interrupt终止线程哪些情况可以终止线程的进行 题目解析 答案选C A:线程使用s...
    99+
    2024-04-02
  • web工厂方法是什么
    这篇文章主要讲解了“web工厂方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“web工厂方法是什么”吧!动机框架使用抽象类定义和维护对象之间的关系。这些对象的创建通常也由框架负责。面...
    99+
    2023-06-19
  • 在什么情况下使用Builder模式
    今天小编给大家分享一下在什么情况下使用Builder模式的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。适用性在以下情况使用B...
    99+
    2023-06-19
  • java闭包在什么情况下使用
    闭包在以下情况下使用: 当一个方法需要访问外部作用域的变量时,可以使用闭包。闭包可以将变量保存在函数内部,并且可以在函数外部访问...
    99+
    2023-10-27
    java
  • 什么情况下可以用免费代理服务ip
    这篇文章主要讲解了“什么情况下可以用免费代理服务ip”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么情况下可以用免费代理服务ip”吧!通常在网络上使用代理服务器,能在哪里看到它们起作用?许...
    99+
    2023-06-20
  • web开发中什么情况下使用table或css
    这篇文章主要介绍web开发中什么情况下使用table或css,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、在以下情况下应该尽量使用css布局 1,浏览量大的页面:比如首页。CSS代码少,结构紧凑,加载快,可以大大...
    99+
    2023-06-08
  • 什么情况下需要使用SPFA 算法
    什么情况下需要使用SPFA 算法?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。适用范围:给定的图存在负权边,这时类似Dijkstra等算法便没有了用武之地,而Bellman-F...
    99+
    2023-05-31
    spfa算法 情况下
  • 网站在什么情况下使用VPS主机
    本篇文章给大家分享的是有关网站在什么情况下使用VPS主机,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。主机行业很花俏,他们提供了大量的选择,以适应用户千奇百怪的需求。但和其他事...
    99+
    2023-06-12
  • 在什么情况下会使用mysql临时表
    这篇文章主要介绍在什么情况下会使用mysql临时表,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MySQL在很多情况下都会用到临时表,总结一下什么时候会用到临时表:什么是临时表:My...
    99+
    2024-04-02
  • 什么情况下使用Adapter模式
    本篇内容主要讲解“什么情况下使用Adapter模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么情况下使用Adapter模式”吧!适用性以下情况使用Adapter模式• 你想使用一个已经存在...
    99+
    2023-06-19
  • 什么情况下停止使用golang
    在现代编程领域中,Golang (又称 Go) 已经成为一个热门的编程语言。Golang 的设计目标是为了创建高效、可读性强、易于维护和编写的编程语言。它让编程变得更加简单,且在大规模高并发的应用程序开发上表现良好。然而,我们也需要看到问题...
    99+
    2023-05-14
  • 什么情况下需要使用redis
    这篇文章给大家分享的是有关什么情况下需要使用redis的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。redis是一个key-value存储系统。和Memcached类似,它支持存...
    99+
    2024-04-02
  • 弹性云主机什么情况下不可以格式化
    弹性云主机在以下情况下不可以进行格式化:1. 当前弹性云主机处于运行状态或正在进行重启操作时,不可以进行格式化操作。需要先停止弹性云...
    99+
    2023-09-21
    云主机 弹性云主机
  • 使用web工厂方法的效果有哪些
    本篇内容主要讲解“使用web工厂方法的效果有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“使用web工厂方法的效果有哪些”吧!效果工厂方法不再将与特定应用有关的类绑定到你的代码中。代码仅处理...
    99+
    2023-06-19
  • VB.NET共享成员需要在什么情况下使用
    本篇内容介绍了“VB.NET共享成员需要在什么情况下使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!VB.NET作为一款优秀的面向对象语言...
    99+
    2023-06-17
  • 什么情况下不能使用Java泛型
    这篇文章主要讲解了“什么情况下不能使用Java泛型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么情况下不能使用Java泛型”吧!1. 前言Java 1.5 引入了泛型来保证类型...
    99+
    2023-06-02
  • 浅谈Mysql在什么情况下会使用内部临时表
    union执行 为了便于分析,使用一下sql来进行举例 CREATE TABLE t1 ( id INT PRIMARY KEY, a INT, b INT, IN...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作