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

刚做的网站搜索不到网站开发手机端

刚做的网站搜索不到,网站开发手机端,wordpress菜谱,天元建设集团有限公司济南第六建筑工程分公司官网目录 一、前言 二、中介者模式 三、总结 一、前言 中介者模式#xff08;Mediator Pattern#xff09;是一种行为型设计模式#xff0c;又成为调停者模式#xff0c;用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地互相引用#xff0c;从而使其耦合…目录 一、前言 二、中介者模式 三、总结 一、前言 中介者模式Mediator Pattern是一种行为型设计模式又成为调停者模式用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地互相引用从而使其耦合松散而且可以独立的改变它们之间的交互。 中介者模式由以下角色组成 Mediator(中介者): 定义一个接口用于与各同事对象进行通信。这个接口主要用来协调各同事对象之间的交互 Concrete Mediator(具体中介者) 实现中介者接口并协调各同事对象之间的交互。具体中介者通常会持有对所有同事对象的引用并在这些对象之间进行调度和通信 Colleague(同事): 定义一个与中介者进行通信的接口。同事对象知道中介者对象并且所有的交互都通过中介者来进行 Concrete Colleague(具体同事) 实现同事接口具体同事通过中介者与其他同事对象进行交互而不是直接与其他同事对象通信 整个中介者模式的结构图 二、中介者模式 首先编写中介者抽象类Mediator.class: public abstract class Mediator {public abstract void add(Colleague colleague);public abstract void operation(Colleague colleague, String message);} 编写具体的中介者类ConcreteMediator.class: public class ConcreteMediator extends Mediator{private ListColleague colleagues new ArrayList();Overridepublic void add(Colleague colleague) {if (!colleagues.contains(colleague)) {colleagues.add(colleague);colleague.setMediator(this);}}Overridepublic void operation(Colleague colleague, String message) {for (Colleague coll : colleagues) {if (!coll.equals(colleague)) {coll.receive(message);}}} }编写抽象同事类Colleague.class public abstract class Colleague {protected Mediator mediator;public void setMediator(Mediator mediator) {this.mediator mediator;}public abstract void receive(String message);public abstract void send(String message); }编写具体的同事类ConcreteColleagueOne.class、ConcreteColleagueTwo.class: public class ConcreteColleagueOne extends Colleague{Overridepublic void receive(String message) {System.out.println(具体同事类 ConcreteColleagueOne 接收请求: message);}Overridepublic void send(String message) {System.out.println(具体同事类 ConcreteColleagueOne 发送请求: message);mediator.operation(this, message);} }public class ConcreteColleagueTwo extends Colleague{Overridepublic void receive(String message) {System.out.println(具体同事类 ConcreteColleagueTwo 接收请求: message);}Overridepublic void send(String message) {System.out.println(具体同事类 ConcreteColleagueTwo 发送请求: message);mediator.operation(this, message);} } 编写客户端类Client.class:  public class Client {public static void main(String[] args) {Mediator concreteMediator new ConcreteMediator();Colleague concreteColleague1 new ConcreteColleagueOne();Colleague concreteColleague2 new ConcreteColleagueTwo();concreteMediator.add(concreteColleague1);concreteMediator.add(concreteColleague2);concreteColleague1.send(Hello1);concreteColleague2.send(Hello2);} }通过代码可以看出抽象同事类中拥有抽象中介者类每个具体的同事类中会调用抽象中介类的方法由具体的中介者实现。 代码测试结果 三、总结 优点与缺点 优点 降低耦合性 通过引入中介者对象同事对象不再需要显式地引用彼此。它们只需要与中介者对象通信从而降低了对象之间的耦合度使得代码更易于维护和扩展 集中控制 中介者模式将对象之间的交互逻辑集中到一个中介者对象中简化了对象的管理和协调便于修改和扩展交互逻辑。 提高可读性和可维护性 将复杂的对象交互逻辑从对象本身中提取出来放到中介者中使得每个对象的职责更加单一代码更清晰更易于理解和维护。 灵活性和扩展性 通过改变或扩展中介者对象可以很方便地改变或扩展系统的交互行为而不需要修改各个同事对象 缺点 复杂性增加 引入了一个新的中介者对象增加了系统的复杂性。中介者对象本身可能会变得复杂因为它需要处理所有的交互逻辑 可能导致性能问题 如果中介者对象处理了大量的交互逻辑可能会成为性能瓶颈因为所有的交互都需要通过中介者来处理。 难以维护 随着系统的规模扩大中介者对象的逻辑可能变得过于复杂难以维护。中介者本身可能会变成一个“上帝对象”负责太多的职责。 应用场景 GUI框架 在图形用户界面GUI中中介者模式常用于处理各个组件如按钮、文本框、复选框等之间的交互。例如一个表单中多个输入字段之间的相互启用/禁用状态的管理 聊天室应用 在即时通讯应用中中介者模式可以用来处理用户之间的消息传递。聊天室服务器可以作为中介者负责接收消息并分发给其他用户 航空交通管制 航空交通管制员作为中介者负责协调不同飞机之间的通信和导航确保它们安全地在空域中飞行 模块化系统 在模块化软件系统中不同模块之间的通信可以通过中介者模式来实现从而使得各个模块可以独立开发和维护 工作流引擎 在业务流程管理BPM系统中中介者模式可以用于协调不同步骤和任务之间的交互确保按照预定的流程顺序执行
http://www.hkea.cn/news/14369733/

相关文章:

  • 哈尔滨教育云平台网站建设物联网工程就业方向及前景
  • 免费html5网站模板牟平网站制作公司
  • 常熟做公司网站买个人家的网站绑定自己的域名
  • 网站设计师前景互联网营销公司有哪些
  • 长沙做网站推荐网站设计作用
  • 室内设计意向图网站宁波网站建设制作网络公司
  • 提供网站建设公网页的维护与更新
  • 网站后台别人制作网站模板框架
  • 网站开发长期合作网站开发基本语言
  • 怎么搞自己的网站郑州男科哪家比较正规医院
  • 厦门市建设局查询保障摇号网站首页上海网站开发建设电话
  • 购物商城网站的运营下载应用市场软件
  • 网站页面统计代码是什么意思广州seo诊断
  • 济南想建设网站国内好的网站建设
  • 电子商务网站推广实训报告博物馆网站建设方案报价
  • 网站建设需要配置环境么wordpress 虚拟机
  • 网站模板源代码下载大连科技学院官方网站的建设与放
  • 深圳购物网站建设wordpress虚拟3d网站
  • 网站策划做啥网站设计制作费
  • 安居客网站怎么做贸易公司简介模板
  • 青岛制作企业网站进出口外贸公司名字
  • 图书馆网站建设申请自己做的产品在哪个网站上可从卖
  • c 做网站方便吗ftp删除wordpress插件
  • 武威住房和城乡建设厅网站wordpress安装到子目录
  • 网站虚拟交易技术怎么做大型网站建设托管服务
  • 北海公司做网站绍兴网站制作价格
  • 消防网站建设的风格北京手机网站制作
  • 徐州网站制作怎样自己做个网站需要些什么
  • 深圳网站品牌建设太原网站优化推广
  • app和网站开发语言的区别制作动作游戏吧中文