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

高端科研网站设计网页设计与制作课程思政

高端科研网站设计,网页设计与制作课程思政,中国证券登记结算有限公司官网,网站改了关键词访问者模式#xff08;Visitor Pattern#xff09;是一种行为型设计模式#xff0c;它允许在不修改现有对象结构的情况下定义新的操作。该模式将操作封装在一个访问者对象中#xff0c;使得可以在不改变被访问对象的类的前提下#xff0c;通过访问者对象对被访问对象进行新…访问者模式Visitor Pattern是一种行为型设计模式它允许在不修改现有对象结构的情况下定义新的操作。该模式将操作封装在一个访问者对象中使得可以在不改变被访问对象的类的前提下通过访问者对象对被访问对象进行新的操作。 访问者模式的核心思想是将数据结构与对数据的操作分离。它通过在被访问对象的接受方法中接受一个访问者对象并将自身作为参数传递给访问者对象的访问方法从而实现对被访问对象的操作。 访问者模式由以下几个角色组成 访问者Visitor定义了对每个具体元素被访问对象的访问操作可以通过重载访问方法来定义不同的操作。具体访问者ConcreteVisitor实现了访问者接口对具体元素进行具体的操作。元素Element定义了一个接受访问者对象的接口通常包含一个接受方法accept该方法将访问者对象作为参数传递给具体元素的访问方法。具体元素ConcreteElement实现了元素接口提供了接受访问者对象的具体实现。对象结构Object Structure包含元素的集合可以是一个集合、一个列表或其他数据结构。通常提供一个迭代器用于遍历元素并在遍历过程中调用元素的接受方法。 下面是一个简单的示例演示了访问者模式的使用 // 访问者接口 interface Visitor {void visit(ConcreteElementA element);void visit(ConcreteElementB element); }// 具体访问者A class ConcreteVisitorA implements Visitor {Overridevoid visit(ConcreteElementA element) {// 对具体元素A的操作}Overridevoid visit(ConcreteElementB element) {// 对具体元素B的操作} }// 具体访问者B class ConcreteVisitorB implements Visitor {Overridevoid visit(ConcreteElementA element) {// 对具体元素A的操作}Overridevoid visit(ConcreteElementB element) {// 对具体元素B的操作} }// 元素接口 interface Element {void accept(Visitor visitor); }// 具体元素A class ConcreteElementA implements Element {Overridevoid accept(Visitor visitor) {visitor.visit(this);} }// 具体元素B class ConcreteElementB implements Element {Overridevoid accept(Visitor visitor) {visitor.visit(this);} }// 对象结构 class ObjectStructure {private ListElement elements new ArrayList();void addElement(Element element) {elements.add(element);}void removeElement(Element element) {elements.remove(element);}void accept(Visitor visitor) {for (Element element : elements) {element.accept(visitor);}} }// 示例代码 public class Main {public static void main(String[] args) {ObjectStructure objectStructure new ObjectStructure();objectStructure.addElement(new ConcreteElementA());objectStructure.addElement(new ConcreteElementB());Visitor visitorA new ConcreteVisitorA();Visitor visitorB new ConcreteVisitorB();objectStructure.accept(visitorA);objectStructure.accept(visitorB);} }在上面的示例中访问者模式允许我们定义不同的访问者ConcreteVisitorA和ConcreteVisitorB并对具体元素A和具体元素B进行不同的操作。通过访问者对象的访问方法我们可以在不修改元素类的情况下对元素进行新的操作。对象结构类ObjectStructure提供了对元素的管理和遍历将访问者对象传递给元素的接受方法从而实现对元素的操作。
http://www.hkea.cn/news/14375298/

相关文章:

  • 哪个网站可以做试卷网站虚拟空间购买
  • 旅游网站框架网站开发环境的安装说明
  • 网站漂浮广告批量网站建设
  • 旅游建设投资公司中网站济南网站建设(选聚搜网络)
  • o2o网站建设代理商网站建设的阶段
  • 网站加载页模板wordpress会员注册怎么搞
  • 兰州微信信息平台网站建设百度快速收录接口
  • 蒙古文网站建设的通知网站不收录
  • 找公司做网站需要咨询什么问题建立网站的费用
  • 建材网站开发个人网站可以做营销吗
  • 太原网站空间wordpress添加自定义tag标签
  • 东莞五金网站建设长沙3合1网站建设电话
  • 黑龙江住房城乡建设厅网站wordpress设置账号
  • 网站网站环境搭建教程口碑好的定制网站建设提供商
  • 网络推广营销网站建设专家网站建设服务商的网站建设流程
  • 网站建设毕业设计任务书创新的江苏网站建设
  • 长沙医疗网站建设工会网站群建设
  • 中英网站建立小程序定制公司设计方案
  • 标志设计网站推荐做毕业设计的网站设计
  • 网站公司建站创建网站 优帮云
  • 网站搭建课程标准怎么修改字体wordpress
  • flash怎么做电子书下载网站湛江企业建站模板
  • 安居网站建设网站设计概述
  • asp net做网站单位建设网站需要的材料
  • 有什么值得做的网站怎么设计网站页面
  • 宁波网站推广优化公司怎么样网站建设合同的要素
  • 怎么创建免费自己的网站平台域名备案 填写网站信息
  • 基金网站建设皖icp备 网站建设
  • 通过网站做外贸四川省城乡住房与建设厅网站首页
  • 使用wordpress搭建网站代理平台有哪些