当前位置: 首页 > news >正文 网站空间费价格织梦网站默认密码忘记 news 2025/11/1 8:32:57 网站空间费价格,织梦网站默认密码忘记,可以做动态图表的网站,双语网站方法原型模式是一种创建型设计模式#xff0c;使调用方能够复制已有对象#xff0c;而又无需使代码依赖它们所属的类。当有一个类的实例#xff08;原型#xff09;#xff0c;并且想通过复制原型来创建新对象时#xff0c;通常会使用原型模式。 The Prototype pattern is g…原型模式是一种创建型设计模式使调用方能够复制已有对象而又无需使代码依赖它们所属的类。当有一个类的实例原型并且想通过复制原型来创建新对象时通常会使用原型模式。 The Prototype pattern is generally used when we have an instance of the class (prototype) and wed like to create new objects by just copying the prototype.结构设计 原型模式包含如下角色 Prototype原型类用来声明克隆方法。在绝大多数情况下只会有一个名为 clone 的方法。 ConcretePrototype具体原型类用来实现克隆方法。除了将原始对象的数据复制到克隆体中之外该方法有时还需处理克隆过程中的极端情况 例如克隆关联对象和梳理递归依赖等等。 原型模式类图表示如下 伪代码实现 接下来将使用代码介绍下原型模式的实现。 // 1.定义原型接口用来声明克隆方法 public interface Prototype {/*** 复制对象** return 复制后的对象*/Prototype clone(); } // 2、定义具体原型类(ConcretePrototype)用来实现克隆方法 public class ConcretePrototype implements Prototype {private String field;public ConcretePrototype() {}public String getField() {return field;}public ConcretePrototype(String field) {this.field field;}Overridepublic Prototype clone() {ConcretePrototype concretePrototype new ConcretePrototype();concretePrototype.field this.field;return concretePrototype;} } // 3、客户端调用 public class PrototypeClient {public PrototypeClient() {}// 调用方式调用具体原型实例的克隆方法public void test() {Prototype concretePrototype new ConcretePrototype(foo);ConcretePrototype clonedPrototype (ConcretePrototype) concretePrototype.clone();System.out.println(clonedPrototype.getField());} }需要说明的是对于Java语言来说Object基类已经提供了一个clone的保护方法用于实现对象的浅复制。注意只有实现了Cloneable接口才可以调用该方法 否则抛出CloneNotSupportedException异常。更多clone方法的介绍可以参考笔者之前的文章。 适用场景 在以下情况下可以考虑使用原型模式 (1) 如果需要复制一些对象同时又希望代码独立于这些对象所属的具体类可以使用原型模式。 例如代码里需要处理第三方接口传递过来的对象时即使不考虑代码耦合的情况 调用方的代码也不能依赖这些对象所属的具体类因为无法知道它们的具体信息。 原型模式可以为调用方提供一个通用接口调用方可通过这一接口与所有实现了克隆的对象进行交互它也使得调用方与其所克隆的对象具体类独立开来。 (2) 如果子类的区别仅在于其对象的初始化方式那么可以使用原型模式来减少子类的数量。 在原型模式中 可以使用一系列预生成的、各种类型的对象作为原型(原型对象池)。客户端不必根据需求对子类进行实例化只需找到合适的原型并对其进行克隆即可。 优缺点 原型模式有以下优点 (1) 将对象克隆与对象所属的具体类分离(解耦)避免克隆对象与具体类的紧耦合。 (2) 简化了复杂对象的初始化代码。对一些复杂对象可以通过提供克隆方法来简化调用方的使用。 (3) 提供了除继承以外的方式来实现复杂对象的初始化。继承建立了子类与父类的强耦合如果可以尽量不要使用继承。 但是原型模式也存在以下缺点 (1) 在重写克隆方法时对于复杂对象的关联对象或递归依赖等处理相比麻烦一些。 参考 《设计模式可复用面向对象软件的基础》 Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides 著 李英军, 马晓星 等译 https://www.cnblogs.com/adamjwh/p/9033550.html 简说设计模式——原型模式 https://refactoringguru.cn/design-patterns/prototype 原型模式 https://www.baeldung.com/java-pattern-prototype Prototype Pattern in Java 文章转载自: http://www.morning.jxltk.cn.gov.cn.jxltk.cn http://www.morning.pmjw.cn.gov.cn.pmjw.cn http://www.morning.pxlql.cn.gov.cn.pxlql.cn http://www.morning.kcdts.cn.gov.cn.kcdts.cn http://www.morning.feites.com.gov.cn.feites.com http://www.morning.ydflc.cn.gov.cn.ydflc.cn http://www.morning.xpgwz.cn.gov.cn.xpgwz.cn http://www.morning.hhrpy.cn.gov.cn.hhrpy.cn http://www.morning.fddfn.cn.gov.cn.fddfn.cn http://www.morning.sjsfw.cn.gov.cn.sjsfw.cn http://www.morning.jtwck.cn.gov.cn.jtwck.cn http://www.morning.lxhgj.cn.gov.cn.lxhgj.cn http://www.morning.fksdd.cn.gov.cn.fksdd.cn http://www.morning.bhznl.cn.gov.cn.bhznl.cn http://www.morning.hylbz.cn.gov.cn.hylbz.cn http://www.morning.wmfmj.cn.gov.cn.wmfmj.cn http://www.morning.kkwbw.cn.gov.cn.kkwbw.cn http://www.morning.nccyc.cn.gov.cn.nccyc.cn http://www.morning.ptslx.cn.gov.cn.ptslx.cn http://www.morning.jrdbq.cn.gov.cn.jrdbq.cn http://www.morning.pcshb.cn.gov.cn.pcshb.cn http://www.morning.xprzq.cn.gov.cn.xprzq.cn http://www.morning.sgfgz.cn.gov.cn.sgfgz.cn http://www.morning.dndk.cn.gov.cn.dndk.cn http://www.morning.xhkgl.cn.gov.cn.xhkgl.cn http://www.morning.lpppg.cn.gov.cn.lpppg.cn http://www.morning.jtfcd.cn.gov.cn.jtfcd.cn http://www.morning.qkrz.cn.gov.cn.qkrz.cn http://www.morning.bmfqg.cn.gov.cn.bmfqg.cn http://www.morning.ttdxn.cn.gov.cn.ttdxn.cn http://www.morning.ffdyy.cn.gov.cn.ffdyy.cn http://www.morning.dqcpm.cn.gov.cn.dqcpm.cn http://www.morning.fznj.cn.gov.cn.fznj.cn http://www.morning.thpns.cn.gov.cn.thpns.cn http://www.morning.pakistantractors.com.gov.cn.pakistantractors.com http://www.morning.qkbwd.cn.gov.cn.qkbwd.cn http://www.morning.tnrdz.cn.gov.cn.tnrdz.cn http://www.morning.jrtjc.cn.gov.cn.jrtjc.cn http://www.morning.mttqp.cn.gov.cn.mttqp.cn http://www.morning.tgyqq.cn.gov.cn.tgyqq.cn http://www.morning.swdnr.cn.gov.cn.swdnr.cn http://www.morning.lsfbb.cn.gov.cn.lsfbb.cn http://www.morning.ntqlz.cn.gov.cn.ntqlz.cn http://www.morning.kqrql.cn.gov.cn.kqrql.cn http://www.morning.jjtwh.cn.gov.cn.jjtwh.cn http://www.morning.c7624.cn.gov.cn.c7624.cn http://www.morning.kghhl.cn.gov.cn.kghhl.cn http://www.morning.smdiaosu.com.gov.cn.smdiaosu.com http://www.morning.fxkgp.cn.gov.cn.fxkgp.cn http://www.morning.mrfnj.cn.gov.cn.mrfnj.cn http://www.morning.lmmh.cn.gov.cn.lmmh.cn http://www.morning.dfkby.cn.gov.cn.dfkby.cn http://www.morning.rxrw.cn.gov.cn.rxrw.cn http://www.morning.smfbw.cn.gov.cn.smfbw.cn http://www.morning.nwmwp.cn.gov.cn.nwmwp.cn http://www.morning.grnhb.cn.gov.cn.grnhb.cn http://www.morning.mdtfh.cn.gov.cn.mdtfh.cn http://www.morning.dnmwl.cn.gov.cn.dnmwl.cn http://www.morning.spkw.cn.gov.cn.spkw.cn http://www.morning.mlwhd.cn.gov.cn.mlwhd.cn http://www.morning.rgzc.cn.gov.cn.rgzc.cn http://www.morning.kmlmf.cn.gov.cn.kmlmf.cn http://www.morning.mjjty.cn.gov.cn.mjjty.cn http://www.morning.bzcjx.cn.gov.cn.bzcjx.cn http://www.morning.lmfxq.cn.gov.cn.lmfxq.cn http://www.morning.mfnjk.cn.gov.cn.mfnjk.cn http://www.morning.mzhh.cn.gov.cn.mzhh.cn http://www.morning.rkfh.cn.gov.cn.rkfh.cn http://www.morning.ykwgl.cn.gov.cn.ykwgl.cn http://www.morning.fxwkl.cn.gov.cn.fxwkl.cn http://www.morning.gydth.cn.gov.cn.gydth.cn http://www.morning.dmtwz.cn.gov.cn.dmtwz.cn http://www.morning.krnzm.cn.gov.cn.krnzm.cn http://www.morning.xgxbr.cn.gov.cn.xgxbr.cn http://www.morning.nrjr.cn.gov.cn.nrjr.cn http://www.morning.xlclj.cn.gov.cn.xlclj.cn http://www.morning.rytps.cn.gov.cn.rytps.cn http://www.morning.wmmqf.cn.gov.cn.wmmqf.cn http://www.morning.jqwpw.cn.gov.cn.jqwpw.cn http://www.morning.cpwmj.cn.gov.cn.cpwmj.cn 查看全文 http://www.tj-hxxt.cn/news/267556.html 相关文章: 创世网站建设 优帮云中国室内设计师网官网 徐州网站建设电话wordpress免费教育插件 学校网站源码开源住房和城乡建设部网站办事大厅 微站是什么网站建设服装在线商城实训报告 一流高职院校建设网站深圳网站优化建设 从零开始做网站seo多用户商城app 微网站和微信前端是什么 当当网的网站怎么做的中文域名注册价格 VPS如何做镜像网站试述网站建设的流程. 宁波外贸网站推广肇庆制作网站软件 广州网站制作公司联系方式一起看在线观看免费 登封免费网站建设企业门户账号是什么 国外html5游戏网站公众号开发技术风险 咸宁网站建设哪家好51自学网 西安网站制作顶尖公司wordpress主题对比 室内设计网站哪里可以看网络运营推广具体做什么工作 网站策划论文如何找到网站的模板页面 网站建设公司包括哪些方面网站建设mng 保定便宜的网站制作wordpress访问特别慢 渭南做网站公司建设银行网站下载中心在哪 建立网站站点的过程中不正确的是wordpress文章页的三大标签 锦州网站建设更好wordpress 域名迁移 深圳 做网站 车公庙使用阿里云建网站 wordpress 经典主题seo最新技巧 广东网站设计哪家好商业空间设计网站大全 网站建设业务员培训北京网站seo优化排名公司 河南网站设计公司价格用来备案企业网站 长沙简单的网站建设WordPress網站放ICP 求职网站建设方案网页制作教程视频自学 西宁网站制作哪里好wordpress使用代码同步到twitter