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

免费h5模板网站模板来必力wordpress

免费h5模板网站模板,来必力wordpress,视频网站开发研究背景,呼市城乡建设厅网站访问者模式是一种行为型设计模式#xff0c;它可以在不修改现有代码结构的情况下#xff0c;为复杂的对象结构添加新的操作。该模式将数据结构和数据操作进行分离#xff0c;使得数据结构可以独立于操作进行变化#xff0c;同时也可以在不改变操作的前提下增加新的操作。 在…        访问者模式是一种行为型设计模式它可以在不修改现有代码结构的情况下为复杂的对象结构添加新的操作。该模式将数据结构和数据操作进行分离使得数据结构可以独立于操作进行变化同时也可以在不改变操作的前提下增加新的操作。 在访问者模式中主要有以下几个角色① 访问者Visitor定义了对每个元素对象访问时所要执行的操作可以通过多态实现针对不同元素的不同操作。② 具体访问者ConcreteVisitor实现了访问者定义的接口完成对元素对象的具体操作。③ 元素Element定义了一个 accept 方法用于接受访问者的访问。④ 具体元素ConcreteElement实现了元素定义的接口通常会在 accept 方法中调用访问者的方法。⑤ 对象结构ObjectStructure包含一个元素的集合通常提供一个方法让访问者遍历所有元素。 访问者模式适用于对象结构比较稳定但经常需要在此对象结构上定义新的操作的情况或者有复杂的对象结构需要一些独立的操作的情况。 1、场景设计 实现场景对象结构中定义A、B两个元素访问者对它们进行访问。 2、C实现 Visitor 是抽象访问者类ConcreteVisitor 是具体访问者类Element 是抽象元素类ConcreteElementA 和 ConcreteElementB 是具体元素类。ObjectStructure 是对象结构类包含了一个元素的集合可以接受访问者的访问。在 main 函数中我们创建了一个具体的访问者和一个对象结构然后向对象结构中添加了两个具体元素最后让访问者访问对象结构。  #include iostream #include vector// 前置声明防止循环引用 class ConcreteElementB;// 抽象访问者类 class Visitor {public:virtual void visit(ConcreteElementB* element) 0; };// 具体访问者类 class ConcreteVisitor : public Visitor {public:void visit(ConcreteElementB* element) override {std::cout ConcreteVisitor is visiting ConcreteElementB std::endl;} };// 抽象元素类 class Element {public:virtual void accept(Visitor* visitor) 0; };// 具体元素类A class ConcreteElementA : public Element {public:void accept(Visitor* visitor) override {std::cout ConcreteElementA is accepting visitor std::endl;} };// 具体元素类B class ConcreteElementB : public Element {public:void accept(Visitor* visitor) override {visitor-visit(this);} };// 对象结构类 class ObjectStructure {private:std::vectorElement* elements;public:void addElement(Element* element) {elements.push_back(element);}void accept(Visitor* visitor) {for (Element* element : elements) {element-accept(visitor);}} };int main() {ConcreteVisitor visitor;ObjectStructure objectStructure;ConcreteElementA elementA;ConcreteElementB elementB;objectStructure.addElement(elementA);objectStructure.addElement(elementB);objectStructure.accept(visitor);return 0; }3、Java实现 Visitor 是抽象访问者类ConcreteVisitor 是具体访问者类Element 是抽象元素类ConcreteElementA 和 ConcreteElementB 是具体元素类。ObjectStructure 是对象结构类包含了一个元素的集合可以接受访问者的访问。在 main 方法中我们创建了一个具体的访问者和一个对象结构向对象结构中添加了两个具体元素并让访问者访问对象结构。  package behavioralpattern.visitor;import java.util.ArrayList; import java.util.List;// 抽象访问者类 interface Visitor {void visit(ConcreteElementB element); }// 具体访问者类 class ConcreteVisitor implements Visitor {Overridepublic void visit(ConcreteElementB element) {System.out.println(ConcreteVisitor is visiting ConcreteElementB);} }// 抽象元素类 interface Element {void accept(Visitor visitor); }// 具体元素类A class ConcreteElementA implements Element {Overridepublic void accept(Visitor visitor) {System.out.println(ConcreteElementA is accepting visitor);} }// 具体元素类B class ConcreteElementB implements Element {Overridepublic void accept(Visitor visitor) {visitor.visit(this);} }// 对象结构类 class ObjectStructure {private ListElement elements new ArrayList();public void addElement(Element element) {elements.add(element);}public void accept(Visitor visitor) {for (Element element : elements) {element.accept(visitor);}} }public class VisitorDemo {public static void main(String[] args) {ConcreteVisitor visitor new ConcreteVisitor();ObjectStructure objectStructure new ObjectStructure();ConcreteElementA elementA new ConcreteElementA();ConcreteElementB elementB new ConcreteElementB();objectStructure.addElement(elementA);objectStructure.addElement(elementB);objectStructure.accept(visitor);} }
http://www.zqtcl.cn/news/12706/

相关文章:

  • 建设网站实验活动小结安装wordpress it works
  • 如何做网站 seo企业宣传片多少钱一分钟
  • 服装设计资源网站蓝色系网站
  • 网站建设培训中心常州网站建设最易
  • 如何建设网站与域名公司邮箱满了怎么处理
  • 单页网站的营销教育网站解决方案
  • 北京企业建站线上推广有哪些平台效果好
  • 成都网站优化教程做网站过程视频
  • 民治做网站多少钱豫icp郑州网站建设
  • 网站推广计划方法网站布局规范
  • 网站推广有哪些手段大连网站建设与维护题库
  • 做机械配件的网站网站建设定制设计
  • 网站认证费怎么做分录创建公司网站过程
  • 链接网站制作对接标准做好门户网站建设
  • 青海餐饮网站建设前端可以做什么毕业设计
  • 建设部信息中心网站电子商务网站建设的目标是什么意思
  • 网站建设费属于无形资产吗怎样将wordpress导出
  • 农业网站怎么做网站自动更新文章
  • 怎样建设的网站好优化好排名免费推广方式有哪些
  • 小程序可以做企业网站手机浏览器网页加速器
  • php怎么建立站点欧美简约风格网站设计
  • 网页设计网站网站建设课程设计漯河做网站zrgu
  • 荆州网站设计女装wordpress
  • 设计师网站pintset浙江省建设厅信息港官网
  • 怎样做易支付网站佛山专业的做网站的
  • 免费发布推广信息的网站网站文章优化事项
  • 揭阳专业的网站建设价格如何做好宣传推广
  • 晋江市住房与城乡建设局网站互联网科技公司做网站哪家好
  • 东莞营销型网站国内做的好的帽子网站
  • 西部数码网站管理助手 没有d盘wordpress编辑无效