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

如何上传织梦做的网站腾讯云建设一个网站要多少钱

如何上传织梦做的网站,腾讯云建设一个网站要多少钱,室内设计者联盟网站,泌阳县住房建设局网站定义 中介者模式(Mediator Pattern)是一种行为设计模式,通过引入一个中介者对象,来降低多个对象之间的直接交互,从而减少它们之间的耦合度。中介者充当不同对象之间的协调者,使得对象之间的通信变得简单且…

定义

中介者模式(Mediator Pattern)是一种行为设计模式,通过引入一个中介者对象,来降低多个对象之间的直接交互,从而减少它们之间的耦合度。中介者充当不同对象之间的协调者,使得对象之间的通信变得简单且集中。

UML图

在这里插入图片描述

  • Mediator(中介者接口):定义中介者与同事之间的交互方法。
  • ConcreteMediator(具体中介者):实现中介者接口,维护对同事对象的引用,并协调它们之间的交互。
  • Colleague(同事抽象类):通常持有对中介者的引用,通过中介者进行通信。
  • ConcreteColleague(同事类):具体的组件类,通常持有对中介者的引用,通过中介者进行通信。

代码

// Mediator interface
interface Mediator {void send(String message, Colleague colleague);
}// Concrete Mediator
class ChatMediator implements Mediator {private List<Colleague> colleagues = new ArrayList<>();public void addColleague(Colleague colleague) {colleagues.add(colleague);}@Overridepublic void send(String message, Colleague colleague) {for (Colleague c : colleagues) {// Prevent sending message back to the senderif (c != colleague) {c.receive(message);}}}
}// Colleague interface
abstract class Colleague {protected Mediator mediator;public Colleague(Mediator mediator) {this.mediator = mediator;}public abstract void send(String message);public abstract void receive(String message);
}// Concrete Colleague
class User extends Colleague {private String name;public User(Mediator mediator, String name) {super(mediator);this.name = name;}@Overridepublic void send(String message) {System.out.println(name + ": Sending message: " + message);mediator.send(message, this);}@Overridepublic void receive(String message) {System.out.println(name + ": Received message: " + message);}
}// Client code
public class MediatorPatternDemo {public static void main(String[] args) {ChatMediator mediator = new ChatMediator();User user1 = new User(mediator, "Alice");User user2 = new User(mediator, "Bob");mediator.addColleague(user1);mediator.addColleague(user2);user1.send("Hello Bob!");user2.send("Hi Alice!");}
}

优点

  • 降低耦合性:同事对象不需要直接引用彼此,减少了依赖关系。
  • 集中管理:所有的交互逻辑集中在中介者中,易于维护和修改。
  • 灵活性:可以方便地添加新的同事类或修改交互逻辑,而不需要改变其他类。

缺点

  • 中介者复杂性:中介者可能会变得复杂,尤其是当它需要处理多个同事对象时。
  • 扩展困难:添加新的同事类可能需要对中介者进行修改,从而影响系统的灵活性。

使用场景

  • 当多个对象之间的通信需要被集中控制时。
  • 当系统中存在大量同事对象,且它们之间的交互复杂时。
  • 当希望减少类之间的依赖关系,提升系统的可维护性时。
http://www.hyszgw.com/news/61537/

相关文章:

  • 怎么经营团购网站创美艺佳网站是谁做的
  • 山西太原建站怎么做谷歌浏览器下载手机版安卓
  • 青海省住房和城乡建设厅 网站哪些网站做企业招聘不要花钱
  • 长沙 学校网站建设做网站无锡
  • 网站的设计理念网址导航网址大全
  • 个人备案的网站做企业站wordpress图片压缩
  • 无锡网站建设哪家做得比较好江西seo推广方案
  • 站长检测同ip网站很多怎么办建设银行网站点不进去
  • 仿网站收费购物网站设计欣赏
  • 成都科技网站建设电话多少网络营销渠道
  • python做的网站如何打开哈尔滨市建设工程交易中心网站
  • 长治网站制作小程序做一个网站的市场价
  • 能自己做网站吗微网站开发技巧
  • 网站网页设计怎么收费sem竞价托管多少钱
  • 阿里云服务器上的网站怎么做修改手机网站视频播放模板
  • wordpress多站点好用吗博艺园 网站建设
  • php做的网站怎么入侵vi设计公司深圳
  • 四川建设网入川备案网站软件推广方式
  • 电子商务网站建设设计网站建设公司中
  • 男女做暧暧网站如何用xshell安装wordpress
  • 接网站做项目赚钱吗如何建立公司的网站
  • wordpress安装在子目录杭州seo公司排名
  • 高端网站建设与管理wordpress 添加分类
  • 宠物狗网站建设分析网络营销推广为什么效果不好
  • 苏州建站公司精选苏州聚尚网络阿里企业邮箱价格
  • 11网站建设waocc网站公司简介模板免费下载
  • 网站建设 中企动力鄂ICP备苏州优化网站
  • 如花建站wordpress4.5 下拉菜单
  • 小程序在建网站吗企业年金个人查询
  • 高清品牌网站设计建设网站建设团队架构