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

门户网站模版搜索引擎优化seo方案

门户网站模版,搜索引擎优化seo方案,一步一步网站建设教程,建筑八大员报考时间和条件目录 0、定义 1、访问者模式的五种角色 2、访问者模式的UML类图 3、示例代码 0、定义 表示一个作用于某对象结构中的各个元素的操作。它可以在不改变各个元素的类的前提下,定义作用于这些元素的新操作。 1、访问者模式的五种角色 抽象元素(Element…

目录

0、定义

1、访问者模式的五种角色

2、访问者模式的UML类图

3、示例代码


0、定义

        表示一个作用于某对象结构中的各个元素的操作。它可以在不改变各个元素的类的前提下,定义作用于这些元素的新操作。

1、访问者模式的五种角色

  • 抽象元素(Element):一个接口,该接口定义了接收访问者的accept操作。
  • 具体元素(Concrete Element):Element的实现类。
  • 对象结构(Object Structure):一个集合,用于存放Element对象,提供遍历它自己的方法。
  • 抽象访问者(Visitor):一个接口,该接口定义操作对象(ConcreteElement的实例)的方法。
  • 具体访问者(Concrete Visitor):实现Visitor接口的类。

2、访问者模式的UML类图

3、示例代码

抽象元素:

package xyz.jangle.design.visitor;public interface Element {public void accept(Visitor v);
}

具体元素A和B:

package xyz.jangle.design.visitor;public class ConcreteElementA implements Element {@Overridepublic void accept(Visitor v) {v.visit(this);}}
package xyz.jangle.design.visitor;public class ConcreteElementB implements Element {@Overridepublic void accept(Visitor v) {v.visit(this);}}

抽象访问者:

package xyz.jangle.design.visitor;public interface Visitor {public void visit(ConcreteElementA a);public void visit(ConcreteElementB b);
}

具体访问者1 和2 :

package xyz.jangle.design.visitor;public class ConcreteElementA implements Element {@Overridepublic void accept(Visitor v) {v.visit(this);}}
package xyz.jangle.design.visitor;public class ConcreteElementB implements Element {@Overridepublic void accept(Visitor v) {v.visit(this);}}

客户端(使用):

package xyz.jangle.design.visitor;import java.util.ArrayList;public class AppMain24 {public static void main(String[] args) {ArrayList<Element> list = new ArrayList<Element>();list.add(new ConcreteElementA());list.add(new ConcreteElementA());list.add(new ConcreteElementA());list.add(new ConcreteElementB());list.add(new ConcreteElementB());ConcreteVisitor1 visitor1 = new ConcreteVisitor1();for(Element e : list){e.accept(visitor1);}ConcreteVisitor2 visitor2 = new ConcreteVisitor2();for(Element e:list) {e.accept(visitor2);}}}

输出结果:

这是访问者1的方法,可以访问ConcreteElementA的属性
这是访问者1的方法,可以访问ConcreteElementA的属性
这是访问者1的方法,可以访问ConcreteElementA的属性
这是访问者1的方法,可以访问ConcreteElementB的属性
这是访问者1的方法,可以访问ConcreteElementB的属性
这是访问者2的方法,可以访问ConcreteElementA的属性
这是访问者2的方法,可以访问ConcreteElementA的属性
这是访问者2的方法,可以访问ConcreteElementA的属性
这是访问者2的方法,可以访问ConcreteElementB的属性
这是访问者2的方法,可以访问ConcreteElementB的属性

http://www.mmbaike.com/news/105111.html

相关文章:

  • wordpress增加内存惠州百度seo地址
  • 沙漠网站建设百度竞价排名的利与弊
  • 网站管理系统怎么做移动网站如何优化排名
  • 网站建设课程心得体会百度客服工作内容
  • 企业网站的建设 英文摘要谷歌搜索引擎镜像
  • 网站蜘蛛爬行google app
  • 石家庄网站制作招聘实体店怎么推广引流
  • 桂林什么公司做网站推广好bt磁力王
  • 站长权重nba季后赛最新排名
  • 手机网站商城建设答辩爱站之家
  • 图书馆门户网站建设会议记录百度网页入口官网
  • 网页设计个人实训报告抖音搜索seo排名优化
  • 第三方网站分类达人介绍
  • 做公司网站需要注意哪些福州网站排名
  • wordpress 高德地图seo关键词挖掘工具
  • 电子商务网站开发前言网站排名推广推荐
  • 做音乐网站用什么程序吸引人的推广标题
  • 濮阳做网站的电话山东seo推广
  • 深圳网站建设网络推广百度关键词排名点击器
  • wpf算是网站开发吗如何查询网站收录情况
  • 设计类网站开发策划书小说风云榜
  • wordpress网站怎么优化怎么做网站模板
  • 做全网营销型网站建设软文推广服务
  • 企业信用公示信息系统(全国)官网宁波网站排名优化seo
  • 昆明地推业务推广公司关键词优化的原则
  • 昆明网站建设哪家最好西安百度推广联系方式
  • 如何对网站进行分析一个新手怎么做推广
  • 专业网站建设团队网站被禁用如何解决
  • 甘肃做网站营销渠道策略有哪些
  • 做网站设计工资多少钱网络推广应该怎么做啊