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

淘宝联盟做返利网站网站外链建设设计

淘宝联盟做返利网站,网站外链建设设计,抚州市临川区建设局网站,桂林象鼻山的传说访问者模式 在访问者模式#xff08;Visitor Pattern#xff09;中#xff0c;我们使用了一个访问者类#xff0c;它改变了元素类的执行算法。通过这种方式#xff0c;元素的执行算法可以随着访问者改变而改变。这种类型的设计模式属于行为型模式。根据模式#xff0c;元… 访问者模式 在访问者模式Visitor Pattern中我们使用了一个访问者类它改变了元素类的执行算法。通过这种方式元素的执行算法可以随着访问者改变而改变。这种类型的设计模式属于行为型模式。根据模式元素对象已接受访问者对象这样访问者对象就可以处理元素对象上的操作。 介绍 意图 主要将数据结构与数据操作分离。 主要解决 稳定的数据结构和易变的操作耦合问题。 何时使用 需要对一个对象结构中的对象进行很多不同的并且不相关的操作而需要避免让这些操作污染这些对象的类使用访问者模式将这些封装到类中。 如何解决 在被访问的类里面加一个对外提供接待访问者的接口。 关键代码 在数据基础类里面有一个方法接受访问者将自身引用传入访问者。 应用实例 您在朋友家做客您是访问者朋友接受您的访问您通过朋友的描述然后对朋友的描述做出一个判断这就是访问者模式。 优点 符合单一职责原则。优秀的扩展性。灵活性。 缺点 具体元素对访问者公布细节违反了迪米特原则。具体元素变更比较困难。违反了依赖倒置原则依赖了具体类没有依赖抽象。 使用场景 对象结构中对象对应的类很少改变但经常需要在此对象结构上定义新的操作。需要对一个对象结构中的对象进行很多不同的并且不相关的操作而需要避免让这些操作污染这些对象的类也不希望在增加新操作时修改这些类。 注意事项 访问者可以对功能进行统一可以做报表、UI、拦截器与过滤器。 代码实现 定义抽象元素 /*** 元素接口*/ public interface Element {void accept(Visitor visitor); }定义具体元素 public class ArrayElement implements Element{private final int arr[];public ArrayElement(int arr[]){this.arr arr;}public int[] getArr() {return arr;}Overridepublic void accept(Visitor visitor) {visitor.visit(this);} }定义抽象访问者 /*** 访问者接口*/ public interface Visitor {void visit(ArrayElement element);}分别实现最大值访问和最小值访问而不更改原始的ArrayElement类的任何方法和数据 public class MaxVisitor implements Visitor{public void visit(ArrayElement element) {int[] arr element.getArr();int max Integer.MIN_VALUE;for (int j : arr) {if (j max) {max j;}}System.out.println(数组最大值为 max);} }public class MinVisitor implements Visitor{Overridepublic void visit(ArrayElement element) {int[] arr element.getArr();int min Integer.MAX_VALUE;for (int j : arr) {if (j min) {min j;}}System.out.println(数组最小值 min);} }客户端 public class Client {public static void main(String[] args) {ArrayElement arrayElement new ArrayElement(new int[]{4,7,3,1,8,9,2,5,6});arrayElement.accept(new MaxVisitor());arrayElement.accept(new MinVisitor());} }
http://www.hkea.cn/news/14496774/

相关文章:

  • wordpress主题 评论深圳网站优化运营
  • 北京网页制作网站黑科技WordPress主题
  • 做网站和app哪个难品牌建设途径
  • 7免费网站建站全栈网站开发流程图
  • 网站建设公司全国排行鲜花网站开发背景
  • 深圳专业学校网站建设单位做好安全生产举报奖励宣传工作的总结
  • 网站怎么快速收录电商设计师岗位职责
  • 响应式旅行社展业网站开发调研报告酒水招商网站大全
  • 上饶高端网站建设网站建设方案书腾讯云
  • 应用软件英文搜索引擎seo外包
  • 广西自治区集约化网站建设要求17模板
  • 企业网站建设之域名篇微站平台
  • 做网站工作职责主流的网站建设的软件有哪些
  • 登封网站建设北京网站建设推荐安徽秒搜科技
  • 传奇广告查询网站自己搭建环境建设网站
  • 百度网站怎么优化排名wordpress几种版本
  • 百度文库网页版龙岗网站seo
  • 做网站虚拟主机怎么选择安丘网站建设报价
  • 深圳网站设计 深圳信科网站建设资料
  • 上海网站设计工作室网站进入沙盒后
  • 免费设计软件网站哪个网站的财经做的好知乎
  • 视频网站开发需求分析东莞公司注册流程
  • 做毛绒玩具在什么网站上找客户大数据营销系统
  • 顺德 网站开发 招聘湖南常德石门县
  • 假怀孕单子在线制作图片seo主要做什么
  • 打开网站要密码旅游网站建设规范
  • 网站建设 事业单位 安全插画培训班学费多少
  • 西安俄语网站建设网站开发入帐分录
  • 通讯录管理网站建设在线咨询网站开发价格
  • 长宁网站设计广州专业的网站建设公司