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

网站改版 优势/seo外链在线提交工具

网站改版 优势,seo外链在线提交工具,企业邮箱系统,便宜的seo网站优化排名先看图:有很多孤立的人这里是3个,如果有100个,是不是图很复杂,那在程序中表示出来就很难。明显用右图很明了。中介者模式就是简化这种关系的模式,有两个角色:关系成员、中介者。我一般喜欢从语法上分析&…

先看图:

6f03c0ff34e2497c087c21d42f824a22.png

有很多孤立的人这里是3个,如果有100个,是不是图很复杂,那在程序中表示出来就很难。明显用右图很明了。

中介者模式就是简化这种关系的模式,有两个角色:关系成员、中介者。我一般喜欢从语法上分析:

中介者:包含每一个关系成员,要处理所有的关系,就要包含是所有的成员。只有一个方法:用来第一成员关系的。

abstract class Mediator {

abstract void call(String string, Person person);

}

具体中介者:call是处理关系的,主要的方法。

public class AllMediator extends Mediator {

Aperson aperson;

Bperson bperson;

Cperson cperson;

public Aperson getAperson() {

return aperson;

}

public void setAperson(Aperson aperson) {

this.aperson = aperson;

}

public Bperson getBperson() {

return bperson;

}

public void setBperson(Bperson bperson) {

this.bperson = bperson;

}

public Cperson getCperson() {

return cperson;

}

public void setCperson(Cperson cperson) {

this.cperson = cperson;

}

@Override

void call(String string, Person person) {

if (person == aperson) {

aperson.re(string);

} else if (person == bperson) {

bperson.re(string);

} else if (person == cperson) {

cperson.re(string);

}

}

}

成员,不必包含与他有关系的成员,他只需包含一个中介者,通过中介发消息,是委托给中介。他有一个发消息的方法,中介通过判定成员来确定恢复消息。

abstract class Person {

String name;

Mediator mediator;

Person(String name, Mediator mediator) {

this.mediator = mediator;

this.name = name;

}

abstract void call(String mess);

abstract void re(String mess);

}

A:

public class Aperson extends Person {

Aperson(String name, Mediator mediator) {

super(name, mediator);

}

@Override

void call(String mess) {

mediator.call(mess, this);

}

@Override

void re(String mess) {

System.out.println(name + ":" + mess);

}

}

B:

public class Bperson extends Person {

Bperson(String name, Mediator mediator) {

super(name, mediator);

}

@Override

void call(String mess) {

mediator.call(mess, this);

}

@Override

void re(String mess) {

System.out.println(name + ":" + mess);

}

}

C:

public class Cperson extends Person {

Cperson(String name, Mediator mediator) {

super(name, mediator);

}

@Override

void call(String mess) {

mediator.call(mess, this);

}

@Override

void re(String mess) {

System.out.println(name + ":" + mess);

}

}

测试

class Test {

public static void main(String[] args) {

AllMediator mediator = new AllMediator();

Aperson aperson = new Aperson("A同学", mediator);

Bperson bperson = new Bperson("B同学", mediator);

Cperson cperson = new Cperson("C同学", mediator);

mediator.setAperson(aperson);

mediator.setBperson(bperson);

mediator.setCperson(cperson);

aperson.call("告诉B,我明天不去了");

bperson.call("告诉C,我明天不去了");

}

}

结果:

A同学:告诉B,我明天不去了

B同学:告诉C,我明天不去了

http://www.lbrq.cn/news/1582093.html

相关文章:

  • 手机微网站开发书籍/今天头条新闻100条
  • 南昌网站建设那家好/sem竞价是什么
  • 什么网站可以自己做名片/百度普通版下载
  • ui设计 接单网站/seo推广软件费用
  • 厦门有什么网站制作公司/刷粉网站推广便宜
  • 佛山微网站建设多少钱/seo建站平台哪家好
  • 洪泽区做网站/关键词优化公司哪家强
  • 赌博网站做员工犯法吗/服装品牌策划方案
  • 代做网站公司/网络推广有几种方法
  • 用服务器做网站空间/佛山网站建设模板
  • 建设企业网站作用/太原seo公司
  • wordpress数据库登陆/惠州seo关键词排名
  • 搞钱的路子网站/seo站长工具是什么
  • 南京移动网站建设/网页设计
  • 宠物店做网站的论文/青岛神马排名优化
  • 网站建设先进个人事迹/宁德市人民政府
  • 即墨疫情最新消息今天封城了/快抖霸屏乐云seo
  • 十大设计创意产品网站/seo技术大师
  • 网站规划结构/关键词优化的建议
  • 国外论文类网站有哪些/网站seo公司
  • 绍兴h5建站/国外seo工具
  • wordpress注册页面主题/seo描述是什么意思
  • 郑州市建筑企业服务中心官网/天津seo网络营销
  • 怎么使用网站模板/百度一下你就知道了
  • 塔城北京网站建设/优化游戏卡顿的软件
  • apicloud wordpress/郑州搜索引擎优化
  • 哪个网站可以做卖房/网时代教育培训机构怎么样
  • 国外有什么好的网站/seo应该怎么做
  • 上海袜网站建设/汽车营销活动策划方案
  • 做建材去什么网站/googleplay官方下载
  • Amazon Linux 训练lora模型的方式
  • WinForm 复合控件(用户控件):创建与使用指南
  • webwork的学习
  • AI_RAG
  • C# 使用iText获取PDF的trailer数据
  • Money Sums