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

电商网站建设需求制作网站的模板下载软件

电商网站建设需求,制作网站的模板下载软件,asp网站,wordpress获取位置概述 中介者模式#xff08;Mediator Pattern#xff09;是一种行为型设计模式#xff0c;它通过封装一系列对象之间的交互方式#xff0c;使这些对象能够互相通信而不需要直接相互引用。中介者模式通过集中控制对象的交互#xff0c;使得对象之间的耦合度降低#xff0…概述 中介者模式Mediator Pattern是一种行为型设计模式它通过封装一系列对象之间的交互方式使这些对象能够互相通信而不需要直接相互引用。中介者模式通过集中控制对象的交互使得对象之间的耦合度降低同时也提高了系统的可维护性和可扩展性。 主要角色 Mediator中介者定义了各个同事对象之间通信的接口通常包含一个或多个事件方法用于接收和发送消息。ConcreteMediator具体中介者实现了中介者接口负责协调各个同事对象之间的通信。具体中介者通常保存了各个同事对象之间的引用并根据具体的业务逻辑进行协调。Colleague同事定义了与其他同事对象通信的接口。ConcreteColleague具体同事实现了同事接口负责与其他同事对象进行通信。 优点 降低了对象之间的耦合性中介者模式将对象之间的通信逻辑集中到一个中介者对象中从而减少了对象之间的直接耦合使得对象之间的关系更加灵活和可扩展。便于维护和扩展由于中介者对象封装了对象之间的交互逻辑当系统需要新增或修改对象之间的交互行为时只需要修改中介者对象即可而不需要修改每个对象之间的引用关系。提供了集中控制中介者对象作为集中控制者可以更好地管理和调控对象之间的交互从而更好地实现业务逻辑的复杂性。 缺点 中介者对象过于庞大由于中介者对象需要处理多个对象之间的交互可能会导致中介者对象变得庞大和复杂难以维护。增加了系统复杂性中介者模式引入了一个额外的中介者对象使得系统中多了一个参与交互的角色增加了系统的复杂性。 使用场景 系统中存在多个对象之间的复杂交互并且对象之间的关系难以维护和理解。希望通过一个中心化的对象来集中管理和调控对象之间的交互逻辑。当一个对象的行为依赖于其他多个对象时可以使用中介者模式将对象之间的交互逻辑转移到中介者对象中。 示例 假设有一个聊天室系统其中包含多个用户用户之间可以发送消息进行交流。用户之间的通信交互较为复杂每个用户都需要了解其他用户的情况。这时可以使用中介者模式来解决。 首先定义中介者接口ChatMediator并在接口中定义发送消息的方法 public interface ChatMediator {void sendMessage(String message, User user); } 然后实现具体的中介者类ChatRoom负责协调用户之间的通信 import java.util.ArrayList; import java.util.List;public class ChatRoom implements ChatMediator {private ListUser users;public ChatRoom() {this.users new ArrayList();}Overridepublic void sendMessage(String message, User user) {for (User u : users) {if (u ! user) {u.receiveMessage(message);}}}public void addUser(User user) {users.add(user);} } 接下来定义用户接口User并在接口中定义发送和接收消息的方法 public interface User {void sendMessage(String message);void receiveMessage(String message); } 然后实现具体的用户类ChatUser负责实现用户接口并在实现类中保存中介者的引用 public class ChatUser implements User {private ChatMediator chatMediator;private String name;public ChatUser(ChatMediator chatMediator, String name) {this.chatMediator chatMediator;this.name name;}Overridepublic void sendMessage(String message) {chatMediator.sendMessage(message, this);}Overridepublic void receiveMessage(String message) {System.out.println(name received message: message);} } 最后我们可以创建聊天室对象和多个用户对象并让用户之间通过聊天室发送和接收消息 public class MediatorExample {public static void main(String[] args) {// 创建聊天室对象ChatRoom chatRoom new ChatRoom();// 创建用户对象User user1 new ChatUser(chatRoom, User1);User user2 new ChatUser(chatRoom, User2);User user3 new ChatUser(chatRoom, User3);// 添加用户到聊天室chatRoom.addUser(user1);chatRoom.addUser(user2);chatRoom.addUser(user3);// 用户发送消息user1.sendMessage(Hello, everyone!);user2.sendMessage(Hi, User1!);user3.sendMessage(Nice to meet you all!);} } 运行结果 User2 received message: Hello, everyone! User3 received message: Hello, everyone! User1 received message: Hi, User1! User3 received message: Hi, User1! User1 received message: Nice to meet you all! User2 received message: Nice to meet you all!
http://www.dnsts.com.cn/news/199690.html

相关文章:

  • 怎么做网站备案企业现在有必要做网站吗
  • 龙岗网站建apache网站部署
  • 做网站公司怎么选潍坊营销型网站制作
  • wordpress建站 客户端网站备案不通过怎么解决
  • 网站设计的主要步骤做棋牌网站团队
  • 杭州网站制作多少钱泉州品牌网站设计定制
  • 做家教的正规网站做婚庆策划的网站
  • 国内做航模比较好的网站全心代发17做网站
  • 大数据软件和网站开发那个就业好新1站网站建设
  • 网站建设师薪资门户网站怎么做才好看
  • 我想建一个网站怎么建手机网站建设商场
  • 黑龙江省和城乡建设厅网站手机模板网站模板下载
  • 嘉兴网站备案去哪里网站新闻页面设计
  • 网站建设工作报告十堰小程序开发
  • 济南网站建设推广报价wordpress自定义查询分页函数
  • 郑州中扬科技网站建设公司怎么样软件开发详细流程
  • 用织梦怎么做网站wordpress 去google
  • 网站建设公司业务培训wordpress 閱讀 主题
  • 建设网站的可行性分析html期末作业网页代码
  • 个人可以做商城网站吗深圳有哪些做网站公司
  • 网站的营销方案中文网站建设入门
  • 通许网站建设word68网站
  • 企业网站mp4怎么处理wordpress整站下载
  • 备案后网站打不开夜晚必备直播软件
  • 厦门翔安建设局网站网站推广平台
  • 网站建设与维护试卷及答案许昌网站推广公司
  • 网站怎么做pc端盒子杭州网站建设杭州
  • 网站建设与管理基础销售珍珠网站建设策划书
  • 无锡网站制作启泉州建设企业网站
  • 网站技术培训班有哪些种类建网站找哪个平台好呢