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

昆明网络营销软件做灰色词seo靠谱

昆明网络营销软件,做灰色词seo靠谱,什么网站立刻买东西,免展网站后台注册定义了一个中介对象来封装一系列对象之间的交互。中介者使各对象直接不再显示地相互引用,从而使其松散耦合,且可以独立地改变它们之间的交互。 通过引入一个中介者对象,来协调和封装多个对象之间的交互,从而降低他们之间的耦合度。…

定义了一个中介对象来封装一系列对象之间的交互。中介者使各对象直接不再显示地相互引用,从而使其松散耦合,且可以独立地改变它们之间的交互。

通过引入一个中介者对象,来协调和封装多个对象之间的交互,从而降低他们之间的耦合度。类似生活中我们遇到的房产中介,买家和卖家通过房产中介交互信息。

这里,我们通过一个聊天室系统示例来演示中介者。

定义中介者接口。

// 中介者接口
interface ChatMediator {void sendMessage(String msg, User user);void addUser(User user);
}

实现具体的中介者:聊天室。

// 具体中介者 - 聊天室实现
class ChatMediatorImpl implements ChatMediator {private List<User> users;public ChatMediatorImpl() {this.users = new ArrayList<>();}@Overridepublic void sendMessage(String msg, User user) {for (User u : this.users) {// 消息不应该被发送者接收到if (u != user) {u.receive(msg);}}}@Overridepublic void addUser(User user) {this.users.add(user);}
}

抽象用户类。

// 抽象用户类
abstract class User {protected ChatMediator mediator;protected String name;public User(ChatMediator med, String name) {this.mediator = med;this.name = name;}public abstract void send(String msg);public abstract void receive(String msg);
}

具体用户类。

// 具体同事类
class UserImpl extends User {public UserImpl(ChatMediator med, String name) {super(med, name);}@Overridepublic void send(String msg) {System.out.println(this.name + " 发送消息: " + msg);mediator.sendMessage(msg, this);}@Overridepublic void receive(String msg) {System.out.println(this.name + " 收到消息: " + msg);}
}

执行程序,测试结果输出。

// 测试类
public class MediatorPatternDemo {public static void main(String[] args) {ChatMediator mediator = new ChatMediatorImpl();User user1 = new UserImpl(mediator, "张三");User user2 = new UserImpl(mediator, "李四");User user3 = new UserImpl(mediator, "王五");User user4 = new UserImpl(mediator, "赵六");mediator.addUser(user1);mediator.addUser(user2);mediator.addUser(user3);mediator.addUser(user4);user1.send("大家好!");System.out.println();user3.send("今天天气不错!");}
}

可以看到,使用了中介者(Mediator)模式,有如下优势:

  • 降低了对象之间的耦合度,使得对象之间可以独立地改变和复用。

  • 将对象间的一对多关联转变为一对一的关联,使系统更易于理解和维护。

  • 有利于每个用户类之间的松耦合。

总结

中介者模式通过引入一个中介者对象,将多边关系变成多个双边关系,避免对象之间的高度耦合,简化系统结构。

http://www.dtcms.com/wzjs/41929.html

相关文章:

  • 网站留言板有什么用手机优化大师下载2022
  • 营销企业网站制作网站建设公司哪家好?
  • 泸州市建设局网站四川省人民政府官网
  • 网站可以做多语言的吗西安优化seo
  • 拼多多电商网站建设亚马逊关键词优化怎么做
  • 中国电力建设协会网站百度推广是什么意思
  • wordpress vps 256mseo就业
  • web前端工程师的发展趋势免费seo视频教程
  • 酒店网站建设考虑哪些因素网络营销工具有哪些?
  • 前端开发培训得多少钱seo网站推广经理招聘
  • 孝感58同城网站建设百度贴吧网页版登录
  • 浅谈网站建设开发软文推广产品
  • 金融类网站模板torrentkitty搜索引擎
  • 点开文字进入网站是怎么做的seo网络营销外包公司
  • 网站动态标签济宁百度推广开户
  • 今天福州发生一起重大网站关键词优化费用
  • wordpress购物网站如何制作简易网站
  • 网站建设评语推广软文代发
  • 国外优秀app设计网站有哪些whois查询 站长工具
  • 美国cms是什么机构seo3的空间构型
  • 怎么做定制软件开发长沙百度快速优化排名
  • 微信做明天展现网站要多少钱促销方案
  • 淄博专业网站建设公司中国seo网站
  • 学做网站要学多久深圳优化公司义高粱seo
  • 简洁中文网站模板网络营销渠道类型有哪些
  • 南昌设计政府网站的公司一键优化大师下载
  • 找人做网站引擎搜索网站
  • 百度站长提交百度统计手机app
  • 百度搜自己的网站win7优化大师官方免费下载
  • 洛阳尚贤网络科技有限公司南昌seo数据监控