当前位置: 首页 > 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.mnyf.cn/news/46767.html

相关文章:

  • 无锡做百度网站百度贴吧网页版登录
  • 怎样申请做p2p融资网站网站后端开发
  • 金山区网站建设线上营销推广方式都有哪些
  • wordpress 64MB快手seo软件下载
  • 易云自助建站百度移动端优化
  • 广州网站建设是什么免费创建个人博客网站
  • 大型网站快速排名电商运营去哪里学比较好
  • 网站开发文档总结百度推广新手入门
  • 南宁著名的网站seo商学院
  • cc域名做门户网站8个公开大数据网站
  • 自己买空间做网站湖南企业seo优化
  • 买个人家的网站绑定自己的域名如何创建自己的卡网
  • 站群管理软件友链交换有什么作用
  • 包头建网站公司哪家强今日头条国际军事新闻
  • 深圳服务好的网页设计seo网站优化服务合同
  • 简约型网站开发合肥网络推广营销
  • 联通入股腾讯厦门seo小谢
  • 福建建设网站市场推广方案模板
  • 自动做设计的网站刷seo排名
  • 网站开发前端学习宁波受欢迎全网seo优化
  • 自建网站服务器备案怎么免费注册域名
  • 湖南省建设工程信息网站百度精准获客平台
  • 安阳网站设计哪家好香港百度广告
  • 网站开发成本会计科目网站域名怎么注册
  • 网站排名快速提升做一个app平台需要多少钱
  • 九江有没有做网站的公司网文网站排名
  • 有域名的话怎么做网站青岛百度seo排名
  • 建设银行的网站为什么这么卡上海网站制作推广
  • 有没有做网站一次付费最新的疫情最新消息
  • 公司门户网站开发长春建站服务