广州网站外贸推广青岛网站优化多少钱

web/2025/10/2 18:30:12/文章来源:
广州网站外贸推广,青岛网站优化多少钱,汉高建设公司网站,网站空间2000m多少钱简单工厂模式 可以根据参数的不同返回不同类的实例 参考#xff1a; CSDN|简单工厂模式 简单工厂通过传给工厂类的参数的不同#xff0c;返回不同的对象#xff0c;包括三部分组成#xff1a; 具体的”产品“工厂类#xff08;实例化并返回”产品“#xff09;客户端 CSDN|简单工厂模式 简单工厂通过传给工厂类的参数的不同返回不同的对象包括三部分组成 具体的”产品“工厂类实例化并返回”产品“客户端使用”产品“ 为什么使用简单工厂 ”产品“的创建过程可能很复杂涉及到多个不同类之间的依赖通过简单工厂将创建过程隐藏在工厂类中一方面减轻了客户端使用该产品的难度另一方面也防止了客户端错误创建产品造成的安全问题。将产品的生产和消费过程分离开这样如果要有了一个新的产品只需要把它加入到工厂类中客户端需要时工厂类就会返回给它否则的话每次添加一个新的产品都需要修改客户端代码违反开闭原则。 简单工厂的缺点 系统过度依赖工厂类工厂类作为一个”上帝类“负责创建客户端需要的所有对象导致一旦工厂类出错整个系统就会崩溃。如果”产品类“特别多工厂类中就会有很多个分支造成工厂类异常庞大难以维护。每次添加新的产品都要修改工厂类从工厂类的角度看违反了”开闭原则“也不利于系统拓展。工厂方法一般是静态方法不利于继承。 适用场景 工厂类负责创建的对象比较少由于创建的对象较少不会造成工厂方法中的业务逻辑太过复杂。 客户端只知道传入工厂类的参数对于如何创建对象不关心客户端既不需要关心创建细节甚至连类名都不需要记住只需要知道类型所对应的参数。 例 如果需要获取不同的手机对象就可以使用简单工厂具体的手机对象依赖于CPU Camera等通过简单工厂的封装客户端获取 Phone 对象时就不需要了解具体的 ”生产过程“了. 实例化CPU Camera 等配件时也应该使用简单工厂。 package pers.junebao.simple_factory;import pers.junebao.simple_factory.fitting.*; import pers.junebao.simple_factory.phone.Honor; import pers.junebao.simple_factory.phone.OnePlus; import pers.junebao.simple_factory.phone.Phone;public class PhoneFactory {/*** 一个用来产生 Phone 对象的工厂方法* param name 根据 name 产生不同的 Phone 的子类对象* return 返回实例化后的对象name 不匹配返回 null*/public static Phone getPhone(String name) {if(name.toLowerCase().equals(oneplus)){// TODO使用简单工厂重构CPU cpu new Qualcomm();Camera camera new Sony();return new OnePlus(cpu, camera);} else if (name.toLowerCase().equals(honor)) {CPU cpu new Kirin();Camera camera new Leica();return new Honor(cpu, camera);} else {return null;}} }package pers.junebao.simple_factory;import pers.junebao.simple_factory.phone.Phone;public class Consumer {public static void main(String[] args) {Phone phone PhoneFactory.getPhone(Honor);assert phone ! null;phone.printConfig();} } GitHub | 完整代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/85756.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎么在京东做网站网站建设相关新闻

事务简介 事务(transaction)是传统数据库所具备的一项基本能力,其根本目的是为数据的可靠性与一致性提供保障。而在通常的实现中,事务包含了一个系列的数据库读写操作,这些操作要么全部完成,要么全部撤销。…

湖北省建设招投标监督机构网站中国半导体设备

该错误提示表示您的 OpenSSL 版本过低,无法兼容 urllib3 v2.0。 解决此问题的方法是升级您的 OpenSSL 版本至 1.1.1 或以上。具体操作如下: 方法一: 检查您的 OpenSSL 版本,使用以下命令: openssl version 如果您的…

郑州做网站和域名云南7省建设厅网站

2.6内核以后,多数驱动都是以平台总线的方式编写,因此对于这种类型的驱动,实际就是要分成两个流程来分析 平台总线设备的构造,平台总线驱动的构造。 下面先分析平台总线设备的构造,平台总线设备里是硬件相关的信息&am…

高校网站建设需求分析报告购物网站模板 php

重构:改善既有代码的设计(评注版) 评注者序评注者序近十年来,若要讨论如何改进代码的质量,很难绕过Martin Fowler的这本经典著作。这本书已经影响了几代程序员,或许会持续不断地影响未来的一批程序员。遗憾…

企业网站建设费用预算微信软文范例100字

1.前提 主要功能切换host 2.下载路径 https://oldj.github.io/SwitchHosts/ 3.使用略(太简单)转载于:https://www.cnblogs.com/totoro-cat/p/9987101.html

有做二手厨房设备的网站吗wordpress默认页面设置方法

什么是wttr? 使用Python预测天气的第一步,我们要了解wttr是什么。wttr.in是一个面向控制台的天气预报服务,它支持各种信息表示方法,如面向终端的ANSI序列(用于控制台HTTP客户端(curl、httpie或wget))、HTML(用于web浏览器)或PNG(…

协会网站建设公司建网站流程

【运维工程师学习三】shell编程 Shell程序分类1、系统中sh命令是bash的软链接2、Shell脚本标准格式之文件后缀3、Shell脚本标准格式之文件内容首行4、Shell脚本的运行方法一、作为可执行程序解释 二、作为解释器(bash)参数 5、find、grep、xargs、sort、…

电子商务网站功能模块如何申请一个网站

A Simple Interconnection Network 一个简单的互连网络 2.1 网络规范和约束2.2 拓扑2.3 路由2.4 流量控制2.5 路由器设计性能分析 A Simple Interconnection Network 一个简单的互连网络 我们将研究简单互连网络的架构和设计,以提供全局视图。我们将研究最简单的…

盐城网站优化价格游戏工作室加盟

大家好,如果您在并发Java应用程序中工作,那么您可能听说过java.util.concurrent包的Exchanger类。 Java中的Exchanger是Java 1.5中与CountDownLatch , CyclicBarrier和Semaphores一起引入的另一个并发或同步实用程序。 顾名思义, …

门户网站建设基础术语四川住房和城乡建设厅

1、下载Redis Redis官网:https://redis.io/ 历史版本: http://download.redis.io/releases 2、连接Linux(或者VMwear) 我们安装的是linux版本的redis 打开xftp我们需要先将我们的Redis上传到服务器上 解压到这里 解压的指令 …

凡科建站相关链接建筑模板做凳子

【ES6.0】- Promise对象 文章目录 【ES6.0】- Promise对象一、概述二、Promise状态三、Promise方法3.1 Promise.prototype.then方法:链式操作3.2 Promise.prototype.catch方法:捕捉错误3.3 Promise.race方法:捕捉错误3.4 Promise.any()3.5 Pr…

做网站最省钱中铁建设集团

在模拟或设计软件中创建道路并指定其特征是一个复杂但必要的过程,尤其是在进行交通模拟、城市规划或道路设计项目时。以下是一个步骤化的指南,用于说明如何创建道路特征: 水平剖面: 使用设计软件的绘图工具来绘制道路的中心线或边…

wordpress多站点 用户四川学校网站建设

antlr4 代码 语法树DSL是很酷的东西,但我不清楚它们有什么用。 然后我意识到它们对以下方面有好处: 摆脱复杂的UI 意思是 更快的做事方式 而已。 当我阅读此博客时,我得出了这个结论。 如果您的用户是技术人员,并且不惧怕类…

服装网站开发手机网站推荐哪些

来源:计算机研究与发展前 言近几年来人工智能技术的飞速发展使得其应用迅猛扩大,而传统的计算机体系结构对于面向人工智能的应用在处理速度、能耗、使用的方便性等方面有着诸多不足。随着人工智能应用的发展,面向人工智能的体系结构成为体系结…

有无广告销售版本"有广告免费无广告收费"网站短网址还原在线生成

最近在网上看到了荧光图,觉得挺帅气,去网上查询了怎么制作荧光图,发现大部分都是QGIS的教程,作为ArcGIS的死忠用户,决定在ArcGIS Pro中实现,其实挺简单的。 1、软件:ArcGIS Pro3.0 2、点数据&a…

班级网站建设首页报告怎样弄一个自己的平台

一、模块题目 二、原理图 1、数码管

响应式网站图片代码板瓦工安装wordpress

上一篇文章介绍到 servicemanager 的 main 函数中主要做了四件事: 1)初始化 binder 驱动。 2)将自身以“manager”添加到 servicemanager 中的 map 集合中。 3)注册成为 binder 驱动的上下问管理者。 4)给 Looper 设置 callback,进入无限循环,处理 client 端发来的请求。…

网站后台管理系统进入php做直播类型的网站

文章目录 0.前言1.模型下载2.配置环境2.1 下载项目文件2.2 配置环境 3.开始推理4.总结 0.前言 本博客将介绍ChatGLM3-6B大模型在Ubuntu上的本地部署教程 1.模型下载 由于毛毛张的服务器服务无法科学上网,所以模型的相关文件必须现在本地下载好,再上传到…

石家庄专业网站制北京网站建立

docker 概念 -云计算的基石 docker的一个软件: 开源 docker基本组成 docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上); docker仓库(Registry):用来保存各种打包好的软件镜像&a…

常用的网站推广装修公司起名

概述 基于Flume MongoDB,对现有的多个应用系统进行日志采集。特点 采集范围每一次用户请求的请求信息。数据量大尽量减少现有系统的改动数据流图 说明:首先考虑的结构体系,是直接在应用系统中,将日志数据写到Flume;但…