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

网站 营销教育建设网站

网站 营销,教育建设网站,宁波设计公司排行榜,域名备案关闭网站吗目录 一、 啥是中介者模式#xff1f;二、 为什么要用中介者模式#xff1f;三、 中介者模式的实现方式四、 中介者模式的优缺点五、 中介者模式的应用场景六、 总结 #x1f31f;我的其他文章也讲解的比较有趣#x1f601;#xff0c;如果喜欢博主的讲解方式#xff0c;… 目录 一、 啥是中介者模式二、 为什么要用中介者模式三、 中介者模式的实现方式四、 中介者模式的优缺点五、 中介者模式的应用场景六、 总结 我的其他文章也讲解的比较有趣如果喜欢博主的讲解方式可以多多支持一下感谢 了解观察者模式请看 (十 八)趣学设计模式 之 观察者模式 ✨更多请看个人主页 码熔burning 一、 啥是中介者模式 想象一下一个繁忙的机场 ✈️。 飞机之间不能直接通信而是通过空中交通管制员中介者来协调起飞、降落等操作。 中介者模式就像是这个空中交通管制员它负责协调多个对象之间的交互避免对象之间直接耦合。 中介者模式就是用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用从而使其耦合松散而且可以独立地改变它们之间的交互 。 简单来说就是找个“中间人”来协调多个对象之间的关系避免大家直接“吵架” 多个对象之间存在复杂的交互关系 就像多个飞机需要在机场协调起飞、降落 对象之间的耦合度很高 就像飞机之间直接通信一旦一个飞机出现问题可能会影响其他飞机 你需要集中控制对象之间的交互 就像需要空中交通管制员来统一协调飞机的行为 二、 为什么要用中介者模式 用中介者模式好处多多 解耦对象之间的关系 对象之间不需要直接引用而是通过中介者进行通信 简化对象之间的交互 将复杂的交互逻辑封装到中介者中使得对象更加简单 集中控制交互 可以方便地修改和扩展对象之间的交互逻辑 ⚙️提高代码的可维护性和可复用性 将交互逻辑集中管理使得代码更加清晰易懂 三、 中介者模式的实现方式 中介者模式主要包含两个核心概念 中介者Mediator 定义了一个接口用于与各个同事对象通信。它知道所有的同事对象并负责协调它们之间的交互 同事Colleague 定义了一个接口用于与中介者通信。它不知道其他的同事对象只知道自己的行为 ⚙️ // 抽象同事类用户public abstract class User {protected ChatRoom mediator; // 中介者protected String name;public User(ChatRoom mediator, String name) {this.mediator mediator;this.name name;}public abstract void send(String message); // 发送消息public abstract void receive(String message); // 接收消息public String getName() {return name;} }// 具体同事类普通用户public class ConcreteUser extends User {public ConcreteUser(ChatRoom mediator, String name) {super(mediator, name);}Overridepublic void send(String message) {System.out.println(this.getName() 发送消息: message);mediator.sendMessage(message, this); // 通过中介者发送消息}Overridepublic void receive(String message) {System.out.println(this.getName() 接收消息: message);} }// 抽象中介者聊天室public interface ChatRoom {void sendMessage(String message, User user); // 发送消息 }// 具体中介者具体聊天室public class ConcreteChatRoom implements ChatRoom {private ListUser users new ArrayList();public void register(User user) {users.add(user);}Overridepublic void sendMessage(String message, User user) {for (User u : users) {// 不发送给自己if (u ! user) {u.receive(message);}}} }// 客户端public class Client {public static void main(String[] args) {// 创建聊天室ConcreteChatRoom chatRoom new ConcreteChatRoom();// 创建用户User user1 new ConcreteUser(chatRoom, 张三);User user2 new ConcreteUser(chatRoom, 李四);User user3 new ConcreteUser(chatRoom, 王五);// 注册用户chatRoom.register(user1);chatRoom.register(user2);chatRoom.register(user3);// 用户发送消息user1.send(大家好);user2.send(今天天气不错);} }代码解释 User 类是抽象同事类定义了 send 和 receive 方法用于发送和接收消息。ConcreteUser 类是具体同事类实现了 User 类负责处理用户的具体行为。ChatRoom 接口是抽象中介者定义了 sendMessage 方法用于发送消息。ConcreteChatRoom 类是具体中介者实现了 ChatRoom 接口负责协调用户之间的消息传递。 输出结果 张三 发送消息: 大家好 李四 接收消息: 大家好 王五 接收消息: 大家好 李四 发送消息: 今天天气不错 张三 接收消息: 今天天气不错 王五 接收消息: 今天天气不错四、 中介者模式的优缺点 优点 解耦对象之间的关系 简化对象之间的交互 集中控制交互 ⚙️提高代码的可维护性和可复用性 缺点 中介者类可能会变得过于复杂难以维护 如果中介者出现问题可能会影响整个系统的运行 五、 中介者模式的应用场景 聊天室 用户之间通过聊天室进行通信 MVC 框架 控制器作为中介者协调模型和视图之间的交互 ️机场空中交通管制 协调飞机起飞、降落 ✈️智能家居系统 协调各种智能设备之间的交互 六、 总结 中介者模式就像“中间人”协调多个对象之间的关系避免大家直接“吵架” 核心概念包括中介者和同事 优点是解耦对象之间的关系、简化对象之间的交互、集中控制交互、提高代码的可维护性和可复用性 缺点是中介者类可能会变得过于复杂难以维护、如果中介者出现问题可能会影响整个系统的运行 适用于多个对象之间存在复杂的交互关系并且对象之间的耦合度很高的场景 希望这篇文章能让你彻底理解中介者模式 祝你学习愉快 看完请看(二 十)趣学设计模式 之 迭代器模式
http://www.hkea.cn/news/14342558/

相关文章:

  • 西宁建设公司网站魔客吧是什麼程序做的网站
  • 网站建设企业站有哪些要求哪里有做旅游包车的网站
  • 大庆网站设计费用平面设计软件大全免费
  • 长治县网站建设网页设计作品田田田田田田田田田田田田田田
  • 优秀网站建设最新报价wordpress反弹攻击
  • 网站开发如何给用户发邮件wordpress发邮件功能
  • 佛山微信网站开发没网站怎么做cpa
  • 百度站长快速收录网站背景图片优化
  • 微商城网站制作电子商务网站建设与维护概述
  • sharepoint网站制作泉州关键词搜索排名
  • asp学习网站免费网络电话软件哪个好用
  • 河北区网站建设拼多多商品关键词搜索排名
  • 网站建设公司华网天下公司上海网页制作与网站设
  • 自动生成作文网站企业天眼查
  • 长治推广型网站建设Wordpress 101
  • 外贸网站seo公司排名渭南市住房和城乡建设局网站
  • 石家庄 网站建设wordpress大学教程
  • 驻马店网站建设电话汝州市文明建设门户网站
  • 中文编程做网站网站漏洞有哪些
  • 如何写好网站开发技术文档网站平台怎么推广
  • 做网站海报甘肃省建设工程安质局网站
  • 无锡做网站哪里好h5牛牛棋牌源码
  • 在哪人网站要以接it项目做婚纱摄影哪家好
  • 岳阳网站建设设计青岛网站设计哪家
  • 网站建设需要什么软件企业中英文网站开发
  • 南通云网站建设现货交易平台排名
  • 网站空间租用费用pjax wordpress
  • 北京市住房与建设厅官方网站常用网站开发语言
  • 网站建设好了怎么在百度可以搜到网站方案怎么写
  • 自建网站备案网站建设的策划文案