当前位置: 首页 > news >正文 如何让百度口碑收录自己的网站休闲食品网站建设策划书 news 2025/10/29 4:18:09 如何让百度口碑收录自己的网站,休闲食品网站建设策划书,同城信息商家的网站开发,网站建设域名跳转博客~犬#x1f4f0;余~ “我欲贱而贵#xff0c;愚而智#xff0c;贫而富#xff0c;可乎#xff1f; 曰#xff1a;其唯学乎” 工厂模式概述 想象一下你走进一家4S店准备买车。作为顾客#xff0c;你不需要知道汽车是如何被制造出来的#xff0c;你只需要告诉销售顾问余~ “我欲贱而贵愚而智贫而富可乎 曰其唯学乎” 工厂模式概述 想象一下你走进一家4S店准备买车。作为顾客你不需要知道汽车是如何被制造出来的你只需要告诉销售顾问“我想要一辆轿车或我想要一辆SUV”他们就会为你安排相应的车型。这就是工厂模式的核心思想 —— 将对象的创建过程封装起来让客户端与具体产品的创建逻辑解耦。 在软件开发中工厂模式就像一个虚拟的4S店。当你的程序需要一个对象时不需要直接使用new关键字来创建而是通过工厂类来获取。这样做的好处是如果将来需要更换对象的创建方式或者增加新的对象类型只需要修改工厂类的代码而不会影响到使用这些对象的代码。 工厂模式通过将对象的创建和使用分离实现了面向对象设计的一个重要原则开闭原则对扩展开放对修改关闭。就像4S店可以不断引入新的车型而不会影响到已有客户的使用体验一样。 工厂模式分类 简单工厂模式 简单工厂就像一家小型的4S店店里只有一个销售顾问他根据顾客的需求直接安排相应的车型。在代码实现中我们会创建一个工厂类它提供一个创建对象的方法根据传入的参数来决定创建哪种具体的产品对象。 如 // 汽车接口 public interface Car {void drive(); }// 具体汽车类 public class SedanCar implements Car {Overridepublic void drive() {System.out.println(驾驶轿车);} }public class SUVCar implements Car {Overridepublic void drive() {System.out.println(驾驶SUV);} }// 简单工厂类 public class CarFactory {public static Car createCar(String type) {if (sedan.equals(type)) {return new SedanCar();} else if (suv.equals(type)) {return new SUVCar();}throw new IllegalArgumentException(不支持的车型类型);} }这种模式的使用非常简单 Car sedanCar CarFactory.createCar(sedan); sedanCar.drive();Car suvCar CarFactory.createCar(suv); suvCar.drive();执行结果 如上示例在简单工厂模式中CarFactory类负责创建所有类型的汽车。这种方式适用于产品种类相对固定创建逻辑不会经常变化的场景。就像一家小型4S店经营的车型比较固定不会经常变动。 工厂方法模式 工厂方法模式就像一个汽车制造集团下设多个专门的工厂每个工厂专注于生产一种类型的汽车。比如轿车工厂专门生产轿车SUV工厂专门生产SUV。这样每个工厂都可以根据自己的特点来优化生产流程。 在代码中我们会定义一个抽象的工厂接口然后针对不同的产品创建专门的工厂类 // 抽象工厂 public abstract class CarFactory {abstract Car createCar(); }// 具体工厂 public class SedanFactory extends CarFactory {Overridepublic Car createCar() {return new SedanCar();} }public class SUVFactory extends CarFactory {Overridepublic Car createCar() {return new SUVCar();} }使用时我们先选择对应的工厂然后创建产品 CarFactory sedanFactory new SedanFactory(); Car sedan sedanFactory.createCar(); sedan.drive();CarFactory suvFactory new SUVFactory(); Car suv suvFactory.createCar(); suv.drive();运行结果 与简单工厂相比工厂方法模式将不同产品的创建过程分散到不同的工厂类中每个工厂类都专注于创建自己的产品。这样在需要增加新产品时只需要添加新的工厂类而不需要修改现有的工厂类更好地符合开闭原则。就像汽车集团可以轻松增加新的生产线而不会影响现有工厂的运作。 抽象工厂模式 抽象工厂模式就像一个汽车制造集团不仅生产整车还要生产发动机、车身等配套零部件。每个工厂都能生产一整套相关的产品这些产品之间相互配套形成一个产品族。比如轿车工厂生产轿车发动机和轿车车身SUV工厂生产SUV发动机和SUV车身。如 // 抽象产品 public interface Engine {void start(); }public interface Body {void assemble(); }// 具体产品 public class SedanEngine implements Engine {Overridepublic void start() {System.out.println(轿车发动机启动);} }public class SUVEngine implements Engine {Overridepublic void start() {System.out.println(SUV发动机启动);} }public class SedanBody implements Body {Overridepublic void assemble() {System.out.println(组装轿车车身);} }public class SUVBody implements Body {Overridepublic void assemble() {System.out.println(组装SUV车身);} }// 抽象工厂 public interface CarFactory {Engine createEngine();Body createBody(); }// 具体工厂 public class SedanFactory implements CarFactory {Overridepublic Engine createEngine() {return new SedanEngine();}Overridepublic Body createBody() {return new SedanBody();} }public class SUVFactory implements CarFactory {Overridepublic Engine createEngine() {return new SUVEngine();}Overridepublic Body createBody() {return new SUVBody();} }测试代码如下 // 生产轿车系列产品 System.out.println( 生产轿车系列 ); CarFactory sedanFactory new SedanFactory(); Engine sedanEngine sedanFactory.createEngine(); Body sedanBody sedanFactory.createBody();// 组装轿车 sedanEngine.start(); // 输出轿车发动机启动 sedanBody.assemble(); // 输出组装轿车车身System.out.println(\n 生产SUV系列 ); // 生产SUV系列产品 CarFactory suvFactory new SUVFactory(); Engine suvEngine suvFactory.createEngine(); Body suvBody suvFactory.createBody();// 组装SUV suvEngine.start(); // 输出SUV发动机启动 suvBody.assemble(); // 输出组装SUV车身运行结果 工厂模式优缺点 简单工厂模式就像一个小型4S店结构简单使用方便。它的优点是实现简单客户端只需要知道产品的参数就可以了缺点是工厂类的职责相对过重增加新产品时需要修改工厂类的代码违反了开闭原则。工厂方法模式像一个汽车制造集团下的多个专业工厂每个工厂专注于一种产品。它的优点是符合开闭原则扩展性好增加新产品只需要增加相应的工厂类缺点是类的数量会随着产品的增加而增加增加了系统的复杂度。抽象工厂模式则像一个全产业链的汽车制造集团可以生产多个产品族。它的优点是能够保证一系列相关产品的配套性支持产品族的扩展缺点是抽象层次较高增加新的产品部件时麻烦需要修改所有的工厂类。 如何选择工厂模式的实现方式 如果你的应用场景简单产品种类较少且相对稳定可以选择简单工厂模式。就像开一家小型4S店只经营几种固定车型。如果产品种类会经常变动建议使用工厂方法模式。这就像汽车制造集团可以根据市场需求灵活增加新的生产线。如果你需要创建一系列相互关联的产品那么抽象工厂模式是最好的选择。这适合于像汽车制造这样需要协调多个配套零部件生产的场景。 总结 工厂模式是一种创建型设计模式它通过将对象的创建与使用分离提供了一种灵活的对象创建方式。简单工厂适合简单场景工厂方法适合单个产品的变化抽象工厂适合产品族的扩展。理解这三种模式的特点和使用场景可以帮助我们在实际开发中选择最适合的实现方式。 关注犬余共同进步 技术从此不孤单 文章转载自: http://www.morning.mzqhb.cn.gov.cn.mzqhb.cn http://www.morning.c7627.cn.gov.cn.c7627.cn http://www.morning.gidmag.com.gov.cn.gidmag.com http://www.morning.mbpfk.cn.gov.cn.mbpfk.cn http://www.morning.rwmp.cn.gov.cn.rwmp.cn http://www.morning.mwwnz.cn.gov.cn.mwwnz.cn http://www.morning.jbtlf.cn.gov.cn.jbtlf.cn http://www.morning.zbkdm.cn.gov.cn.zbkdm.cn http://www.morning.qinhuangdjy.cn.gov.cn.qinhuangdjy.cn http://www.morning.plfrk.cn.gov.cn.plfrk.cn http://www.morning.gjqwt.cn.gov.cn.gjqwt.cn http://www.morning.gfpyy.cn.gov.cn.gfpyy.cn http://www.morning.fypgl.cn.gov.cn.fypgl.cn http://www.morning.rnpt.cn.gov.cn.rnpt.cn http://www.morning.cjsrg.cn.gov.cn.cjsrg.cn http://www.morning.gqfbl.cn.gov.cn.gqfbl.cn http://www.morning.tqbqb.cn.gov.cn.tqbqb.cn http://www.morning.fmtfj.cn.gov.cn.fmtfj.cn http://www.morning.rtjhw.cn.gov.cn.rtjhw.cn http://www.morning.mingjiangds.com.gov.cn.mingjiangds.com http://www.morning.ssxlt.cn.gov.cn.ssxlt.cn http://www.morning.qtzqk.cn.gov.cn.qtzqk.cn http://www.morning.dztp.cn.gov.cn.dztp.cn http://www.morning.tqgx.cn.gov.cn.tqgx.cn http://www.morning.cmdfh.cn.gov.cn.cmdfh.cn http://www.morning.mzwfw.cn.gov.cn.mzwfw.cn http://www.morning.sbjbs.cn.gov.cn.sbjbs.cn http://www.morning.nyqnk.cn.gov.cn.nyqnk.cn http://www.morning.ksjmt.cn.gov.cn.ksjmt.cn http://www.morning.tgfjm.cn.gov.cn.tgfjm.cn http://www.morning.mbrbk.cn.gov.cn.mbrbk.cn http://www.morning.ykwqz.cn.gov.cn.ykwqz.cn http://www.morning.rxwfg.cn.gov.cn.rxwfg.cn http://www.morning.rnzbr.cn.gov.cn.rnzbr.cn http://www.morning.mmxnb.cn.gov.cn.mmxnb.cn http://www.morning.rxydr.cn.gov.cn.rxydr.cn http://www.morning.czgtt.cn.gov.cn.czgtt.cn http://www.morning.nyqnk.cn.gov.cn.nyqnk.cn http://www.morning.zdydj.cn.gov.cn.zdydj.cn http://www.morning.znmwb.cn.gov.cn.znmwb.cn http://www.morning.rppf.cn.gov.cn.rppf.cn http://www.morning.ytfr.cn.gov.cn.ytfr.cn http://www.morning.wzyfk.cn.gov.cn.wzyfk.cn http://www.morning.rkyw.cn.gov.cn.rkyw.cn http://www.morning.byywt.cn.gov.cn.byywt.cn http://www.morning.msgcj.cn.gov.cn.msgcj.cn http://www.morning.vtbtje.cn.gov.cn.vtbtje.cn http://www.morning.nhzps.cn.gov.cn.nhzps.cn http://www.morning.lwmzp.cn.gov.cn.lwmzp.cn http://www.morning.lkfhk.cn.gov.cn.lkfhk.cn http://www.morning.bfrff.cn.gov.cn.bfrff.cn http://www.morning.yskhj.cn.gov.cn.yskhj.cn http://www.morning.lbssg.cn.gov.cn.lbssg.cn http://www.morning.xylxm.cn.gov.cn.xylxm.cn http://www.morning.cmfkp.cn.gov.cn.cmfkp.cn http://www.morning.gftnx.cn.gov.cn.gftnx.cn http://www.morning.kqpxb.cn.gov.cn.kqpxb.cn http://www.morning.jrlxz.cn.gov.cn.jrlxz.cn http://www.morning.dwkfx.cn.gov.cn.dwkfx.cn http://www.morning.zpyh.cn.gov.cn.zpyh.cn http://www.morning.lsfbb.cn.gov.cn.lsfbb.cn http://www.morning.c7498.cn.gov.cn.c7498.cn http://www.morning.ailvturv.com.gov.cn.ailvturv.com http://www.morning.phjyb.cn.gov.cn.phjyb.cn http://www.morning.tqdlk.cn.gov.cn.tqdlk.cn http://www.morning.ryrpq.cn.gov.cn.ryrpq.cn http://www.morning.ydxg.cn.gov.cn.ydxg.cn http://www.morning.clbsd.cn.gov.cn.clbsd.cn http://www.morning.nwczt.cn.gov.cn.nwczt.cn http://www.morning.qgwpx.cn.gov.cn.qgwpx.cn http://www.morning.kzrg.cn.gov.cn.kzrg.cn http://www.morning.wpspf.cn.gov.cn.wpspf.cn http://www.morning.swkzk.cn.gov.cn.swkzk.cn http://www.morning.wbns.cn.gov.cn.wbns.cn http://www.morning.rzczl.cn.gov.cn.rzczl.cn http://www.morning.lmjkn.cn.gov.cn.lmjkn.cn http://www.morning.rlbg.cn.gov.cn.rlbg.cn http://www.morning.pfggj.cn.gov.cn.pfggj.cn http://www.morning.klzdy.cn.gov.cn.klzdy.cn http://www.morning.bpmdg.cn.gov.cn.bpmdg.cn 查看全文 http://www.tj-hxxt.cn/news/258522.html 相关文章: 长春建站费用网站开发语言为 php 和谐校园网站建设阿土伯 是做网站的吗 怎么做招聘网站链接做网站 sql 用哪种 没有文章更新的网站怎么做优化设计作品展示网站 上海做网站制作wordpress 防黑 通化建设工程信息网站短视频运营主要做什么 如何根据网址攻击网站内部网站 建设目标 个人备案能公司网站厦门网站建设手机版 做个外贸网站大概多少钱安徽金开建设集团网站 泰安做网站哪家好校园网站开发需求 一个网站怎么做新闻模块外贸网站 百度网站推广怎么收费现在做网络推广网站建设怎么样 什么是网站推广策略云南固恒建设集团有限公司网站 天津网站建设方案维护wordpress运行c语言 网站平台建设设备清单网站的图片做多大尺寸 建设网站合同范本网页游戏排行榜2024 郑州设计网站的公司无代码开发平台 开源 手机网站带后台源代码如何推广微商城 博物馆网站模版湖南营销型网站建设磐石网络 怎么开免费网站计算机网络实验 做网站的 怎么在南京人社网站做失业登记wordpress导航栏字体 咖啡厅网站开发目标哪家网站建设专业 做网站价格需要多少钱深圳网站的优化 如何做网站免费教程wordpress文章不显示 潮州网站seo推广广州海珠区赤岗 新港网站建设公司 电脑网站你懂我意思正能量个人 服务器 linux 建网站 如何做网站新手引导手把手教你优化网站 有哪些漫画做的好的网站网站历史记录怎么恢复 最专业网站建设wordpress数据库配置页面 淘宝店铺网站建设可行性报告asp网站制作实例教程