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

莱芜58同城网站代码优化方法

莱芜58同城,网站代码优化方法,淄博网站制作怎么收费,如何去除wordpress登录页面图标1.原型模式定义 用一个已经创建的实例作为原型#xff0c;通过复制该原型对象来创建一个和原型对象相同的新对象#xff1b; 1.1 原型模式优缺点 优点 当创建一个新的对象实例较为复杂时#xff0c;使用原型模式可以简化对象的创建过程#xff0c;通过复制一个已有的实例…1.原型模式定义 用一个已经创建的实例作为原型通过复制该原型对象来创建一个和原型对象相同的新对象 1.1 原型模式优缺点 优点 当创建一个新的对象实例较为复杂时使用原型模式可以简化对象的创建过程通过复制一个已有的实例可以提高新实例的创建效率相较比工程模式原型模式提供了简化的创建结构无需专门的工厂类来创建产品可以使用深克隆的方式保存对象状态辅助实现撤销操作 缺点 需要为每个类配备一个克隆方法而且这个克隆方法位于一个类的内部对已有的类改造时需要修改源代码违反了开闭原则 1.2 原型模式适用场景 创建对象的成本比较大比如对象中的数据是经过复杂计算或者需要从数据库得到这种情况就可以使用原型模式从其他已有的对象中进行拷贝而不是每次都创建新的对象 资源优化场景如当进行对象初始化需要很多外部资源IO资源、数据文件、CPU、网络、内存等复杂的依赖场景如A对象的创建依赖BB依赖CC依赖D。。。性能和安全要求的场景如同一个用户在一个会话周期里可能会反复登录平台或使用某些受限的功能每一次访问请求都会访问授权服务器进行授权但如果每次都通过 new 产生一个对象会非常烦琐这时则可以使用原型模式同一个对象可能被多个修改者使用的场景需要保存原始状态的场景如记录历史操作的场景 2.原型模式原理 原型模式核心就是通过克隆复制一个对象 抽象原型类Prototype声明克隆方法的接口类是所有具体原型类的公共父类它可以是抽象类也可以是接口具体原型类ConcretePrototype实现在抽象原型类中声明的克隆方法在克隆方法中返回自己的一个克隆对象客户类Client在客户类中使一个原型对象克隆自身从而创建一个新的对象由于客户类针对抽象原型类编程因此用户可以根据需要选择具体原型类系统具有较好的扩展性增加或者替换原型类都比较方便  2.1 深克隆与浅克隆 深克隆完全创建一个新对象且新对象的变量同原型一致二者互不影响浅克隆新对象的变量同原型一致且新对象的引用仍然指向原型对象二者共享同一对象 Java 中的 Object 类的 clone() 方法就是浅克隆如下面常用的BeanUtils用到了浅克隆 BeanUtils.cloneBean(Object obj); 对象序列化之后再进行反序列化获取到的就是不同对象这就是深克隆 SerializationUtils.clone(T object); 3.原型模式实现 【实例】 如一个广告邮件的发送大部分信息都是用的模板是相同的只有收件人等不同如果每发送一个邮件就创建一个邮件对象比较浪费这就可以用到原型模式 【代码】 首先实体类中重写clone()方法 Data public class Mail implements Cloneable{//收件人private String receiver;//邮件名称private String subject;//称谓private String appellation;//邮件内容private String context;//构造函数public Mail(AdvTemplate advTemplate) {this.context advTemplate.getAdvContext();this.subject advTemplate.getAdvSubject();}Overridepublic Mail clone(){Mail mail null;try {mail (Mail)super.clone();} catch (CloneNotSupportedException e) {e.printStackTrace();}return mail;} } 然后即可克隆该对象 //模拟邮件发送 int i 0;//把模板定义出来,数据是从数据库获取的 Mail mail new Mail(new AdvTemplate()); mail.setTail(xxx银行版权所有); while(i MAX_COUNT){//下面是每封邮件不同的地方Mail cloneMail mail.clone();cloneMail.setAppellation( 先生 (女士));Random random new Random();int num random.nextInt(9999999);cloneMail.setReceiver(numliuliuqiu.com);//发送 邮件sendMail(cloneMail);i; }
http://www.dnsts.com.cn/news/107427.html

相关文章:

  • 绍兴网站建设做长海报的网站
  • 绍兴酒店网站建设seo网络推广经理
  • 东莞手机网站模板银川 网站制作
  • 招聘网站建设与开发要求网站后台上传图片做难吗?
  • 海洋网络网站建设js 网站制作
  • 互联网科技网站wordpress公众号文章分类
  • 免费手机wap建站网页设计与制作字体设置
  • 网站建设 的介绍什么身一什么网站建设
  • 在哪个网站可以做图文合并网站建设公司如何运营
  • 网站建设的通知wordpress安装模板文件
  • 做设计的地图网站有哪些sns网站设计
  • 青海专业的网站建设公司网上商城制作
  • 网站建设 网络科技公司如何查询网站建设时间
  • 浙江网络公司网站建设新手做网页做那个网站简单
  • 北京SEO网站优化公司免费建站网站一级大录像不卡
  • 做网站怎么实现鼠标经过图像企业做网站排名
  • 青岛黄岛区网站开发技能培训机构
  • 做百度推广是不是得有个网站先抖音seo工具
  • 沈阳网站前端品牌营销相关理论
  • 设计模板网站都有哪些深圳制作网站公司哪里好
  • 做竞价的网站做优化有效果吗wordpress主题下载zip
  • 什么叫网站域名做网站能用自己电脑吗
  • 深圳建设外贸网站中美关系最新消息
  • 58同城网站建设深圳丽丽亚重庆省建设厅网站
  • 网站设计方案报价wordpress后台添加底部菜单
  • dedecms 做电商网站网站建设公司专业公司排名
  • 卖东西的网站怎么做网站的建设多少钱
  • 个人备案网站可以做电商吗央企网站开发
  • 免费微网站开发平台网站验收指标
  • php网站开发实训指导书自己怎么设计公司的logo