当前位置: 首页 > news >正文

成华区建设局质检站网站网站网络推广方式方法

成华区建设局质检站网站,网站网络推广方式方法,代做网站名称优化,如何保护我做的网站模板github#xff1a;GitHub - QiuliangLee/pattern: 设计模式 概念 根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式#xff0c;根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。 简单工厂模式、工厂方法模式和抽象工厂模式有何区别#xff1f; - 知…githubGitHub - QiuliangLee/pattern: 设计模式 概念 根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。 简单工厂模式、工厂方法模式和抽象工厂模式有何区别 - 知乎本篇详解简单工厂、工厂方法和抽象工厂建议关注和收藏。在我们平常创建对象的时候都是通过关键字 new…https://www.zhihu.com/question/27125796/answer/1615074467 开闭原则 ocp: —个软件实体应该对扩展开放对修改关闭 应该通过扩展来实现变化而不是通过修改已有的代码来实现变化 简单工厂唯一工厂类一个产品抽象类工厂类的创建方法依据入参判断并创建具体产品对象。 工厂方法多个工厂类一个产品抽象类利用多态创建不同的产品对象避免了大量的if-else判断。 抽象工厂多个工厂类多个产品抽象类产品子类分组同一个工厂实现类创建同组中的不同产品减少了工厂子类的数量。 需求分析 我想生产一批鼠标鼠标品牌目前只有”联想“”惠普“。惠普鼠标 没有工厂模式 缺点不符合ocp 联想鼠标 ​ public class LenovoMouse{public void build() {System.out.println(生产联想鼠标);} }​ 惠普鼠标 ​ public class HPMouse{public void build() {System.out.println(生产惠普鼠标);} }​ MouseDemo  package com.lql.factory.no;import com.lql.factory.entity.HpMouse; import com.lql.factory.entity.LenovoMouse; import com.lql.factory.enums.MouseEnum;public class MouseDemo {public void getMouse(Integer type) {if (MouseEnum.LENOVO_MOUSE.getCode().equals(type)) {LenovoMouse lenovoMouse new LenovoMouse();lenovoMouse.build();} else if (MouseEnum.HP_MOUSE.getCode().equals(type)) {HpMouse hpMouse new HpMouse();hpMouse.build();} else {throw new IllegalArgumentException(无效的鼠标 type);}} }简单工厂模式 定义一个工厂类,根据传入的参数的值不同返回不同的实例,使得产品类满足OCP 特点:被创建的实例具有共同的父类或接口 使用场景: 客户端不关心对象的创建过程需要创建的对象较少,修改对象不符合开闭原则. 缺点工厂不满足OCP Mouse接口 package com.lql.factory.entity;public interface Mouse {void build(); }LenovoMouse package com.lql.factory.entity;public class LenovoMouse implements Mouse {Overridepublic void build() {System.out.println(生产联想鼠标);} } HpMouse package com.lql.factory.entity;public class HpMouse implements Mouse {Overridepublic void build() {System.out.println(生产惠普鼠标);} }MouseEnum package com.lql.factory.enums;import lombok.AllArgsConstructor; import lombok.Getter;AllArgsConstructor Getter public enum MouseEnum {LENOVO_MOUSE(1, 联想鼠标),HP_MOUSE(2, 惠普鼠标);private final Integer code;private final String desc; }MouseFactory package com.lql.factory.simplefactory;import com.lql.factory.entity.HpMouse; import com.lql.factory.entity.LenovoMouse; import com.lql.factory.entity.Mouse;public class MouseFactory {public static Mouse createMouse(Integer type) {switch (type) {case 1:return new LenovoMouse();case 2:return new HpMouse();default:return new LenovoMouse();}} }工厂模式 定义一个用于常见对象的接口,让子类决定实例化哪一个类 对类的实例化延迟到其子类 特点:不违反开闭原则(增加联想鼠标,不用修改已有代码,增加新的接口,LenvoMouse和 LenvoMouseFactory) 缺点: (1)添加子类的时候”拖家带口” (2)只支持同一类产品的创建 MouseFactory package com.lql.factory.factorymethod;import com.lql.factory.entity.Mouse;public interface MouseFactory {Mouse createMouse(); }LenovoMouseFactory package com.lql.factory.factorymethod;import com.lql.factory.entity.LenovoMouse; import com.lql.factory.entity.Mouse;public class LenovoMouseFactory implements MouseFactory {Overridepublic Mouse createMouse() {return new LenovoMouse();} }HpMouseFactory package com.lql.factory.factorymethod;import com.lql.factory.entity.HpMouse; import com.lql.factory.entity.Mouse;public class HpMouseFactory implements MouseFactory {Overridepublic Mouse createMouse() {return new HpMouse();} }FactoryMethodDemo package com.lql.factory.factorymethod;import com.lql.factory.entity.Mouse;public class FactoryMethodDemo {public static void main(String[] args) {MouseFactory mf new HpMouseFactory();Mouse mouse mf.createMouse();mouse.build();} }抽象工程模式 提供一个创建一系列相关或相互依赖对象的接口 (1)抽象工厂模式侧重的是同一产品族(比如鼠标和键盘,统一厂商) (2)工厂方法模式更加侧重于同一产品等级(比如鼠标) 增加主板时还是违背开闭原则,可以采用spring ioc与工厂模式相结合的方式解决. Keyboard package com.lql.factory.entity;public interface Keyboard {void build(); }LenovoKeyboard package com.lql.factory.entity;public class LenovoKeyboard implements Keyboard {Overridepublic void build() {System.out.println(生产联想键盘);} }HpKeyboard package com.lql.factory.entity;public class HpKeyboard implements Keyboard {Overridepublic void build() {System.out.println(生产惠普键盘);} }ComputerFactory package com.lql.factory.absfactory;import com.lql.factory.entity.Keyboard; import com.lql.factory.entity.Mouse;public interface ComputerFactory {Mouse createMouse();Keyboard createKeyboard(); }LenovoComputerFactory package com.lql.factory.absfactory;import com.lql.factory.entity.Keyboard; import com.lql.factory.entity.LenovoKeyboard; import com.lql.factory.entity.LenovoMouse; import com.lql.factory.entity.Mouse;public class LenovoComputerFactory implements ComputerFactory {Overridepublic Mouse createMouse() {return new LenovoMouse();}Overridepublic Keyboard createKeyboard() {return new LenovoKeyboard();} }DellComputerFactory package com.lql.factory.absfactory;import com.lql.factory.entity.DellKeyboard; import com.lql.factory.entity.DellMouse; import com.lql.factory.entity.Keyboard; import com.lql.factory.entity.Mouse;public class DellComputerFactory implements ComputerFactory {Overridepublic Mouse createMouse() {return new DellMouse();}Overridepublic Keyboard createKeyboard() {return new DellKeyboard();} }AbstractFactoryDemo package com.lql.factory.absfactory;import com.lql.factory.entity.Keyboard; import com.lql.factory.entity.Mouse;public class AbstractFactoryDemo {public static void main(String[] args) {ComputerFactory cf new HpComputerFactory();Mouse mouse cf.createMouse();Keyboard keyboard cf.createKeyboard();mouse.build();keyboard.build();} }
http://www.pierceye.com/news/769672/

相关文章:

  • 微商招商网站源码互联网营销推广方案
  • 深圳做网站服务公司河北石家庄最新新闻
  • 山东济南seo整站优化唐山网站建设那家性价比高
  • c 可以做哪些网站小说网站建设采集
  • 公司网站备案条件高校网站集群平台子站开发
  • 制作网站能赚钱吗单位发购物或电影卡有哪些app
  • 我们网站在那里登陆后台系统管理网站建设服务咨询
  • 免费上传图片的网址网站seo工作内容
  • chatgpt 网站一对一直播软件开发
  • 网站做排行多少费用个人电脑做网站打不开数据库
  • 做网站是比特币的滁州做网站电话号码
  • php网站开发说明怎么样建网站卖东西
  • 网站图片做多大浙江建设人才网
  • 网站关键词宝塔wordpress腾讯云
  • 优化排名推广教程网站免费房地产网站模板
  • 商城网站建设都需要多少钱电子商务网站建设预算
  • 万荣做网站怎么优化一个网站关键词
  • 潍坊市建设局网站网络工程师 网站建设
  • 做网站要求什么条件计算机网络技术学什么
  • 建设网站呼叫中心有什么好处中国能源建设集团有限公司级别
  • 免费论坛建站二 网站建设的重要性
  • wordpress站点迁移怎样做带音乐的表白网站
  • 海淀网站制作网站建设基本技术
  • 做一个平面网站的成本如何搭建一个app平台
  • 建设工程学部研究生培养网站义乌网站建设和制作
  • 简单的模板网站吉安网站建设jxthw
  • js做的网站佛山本地的网站设计公司
  • 企业网站页面网站建设朝阳
  • ui设计工具有哪些百度seo排名优化系统
  • 网站建设案例简介怎么写淘宝官方网站主页