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

十度公司做网站怎么样网站建设需要多少时间

十度公司做网站怎么样,网站建设需要多少时间,觅知网 大而全的高质量素材站,网站公司怎么找客户文章目录 1、中介者模式2、案例3、总结 1、中介者模式 如图: 同事类之间关联较多时,整体出现网状结构,耦合度极高。一个对象一变动,好多对象都得改。若变为右边的星形结构,则一个类的变动,只影响自身与中介…

文章目录

  • 1、中介者模式
  • 2、案例
  • 3、总结

1、中介者模式

如图:

在这里插入图片描述

同事类之间关联较多时,整体出现网状结构,耦合度极高。一个对象一变动,好多对象都得改。若变为右边的星形结构,则一个类的变动,只影响自身与中介者类。右边即中介者模式:定义一个中介角色来封装一系列对象之间的交互,使原对象之间解耦合。

不要把所有的对象关系处理逻辑封装在本类中,而是使用一个专门的类来管理那些不属于自己的行为

在这里插入图片描述

中介者模式的角色:

  • 抽象中介者:中介者的接口,提供同事对象注册(房东怎么向中介同步房源信息)、转发同事对象信息(房东和租房者的沟通)的抽象方法
  • 具体中介者:实现类,可定义List管理同事对象
  • 抽象同事类:提供同事对象交互的抽象方法
  • 具体同事类:实现类,需要与其他同事对象交互时,由中介对象负责传达

2、案例

房主将房子托管给中介,租房者找中介租房。房主和租房者属于同事类。

在这里插入图片描述

先定义抽象中介者,提供一个同事对象之间沟通的方法:

//抽象中介者
public abstract class Mediator {//申明一个联络方法public abstract void constact(String message,Person person);
}

定义抽象同事类,聚合抽象中介者:

//抽象同事类
public abstract class Person {protected String name;  //名字protected Mediator mediator;  //中介public Person(String name,Mediator mediator){this.name = name;this.mediator = mediator;}
}

定义具体同事类:租客

//具体同事类 承租人
public class Tenant extends Person {public Tenant(String name, Mediator mediator) {super(name, mediator);}//与中介者联系public void constact(String message){mediator.constact(message, this); }//获取信息public void getMessage(String message){System.out.println("租房者" + thhis.name +"获取到的信息:" + message);}
}

定义具体同事类:房主

//具体同事类 房屋拥有者
public class HouseOwner extends Person {public HouseOwner(String name, Mediator mediator) {super(name, mediator);}//与中介者联系public void constact(String message){mediator.constact(message, this);}//获取信息public void getMessage(String message){System.out.println("房主" + name +"获取到的信息:" + message);}
}

定义具体中介者,聚合同事类

//中介机构
public class MediatorStructure extends Mediator {//首先中介结构必须知道所有房主和租房者的信息private HouseOwner houseOwner;private Tenant tenant;public HouseOwner getHouseOwner() {return houseOwner;}public void setHouseOwner(HouseOwner houseOwner) {this.houseOwner = houseOwner;}public Tenant getTenant() {return tenant;}public void setTenant(Tenant tenant) {this.tenant = tenant;}//中介去完成信息的交互public void constact(String message, Person person) {if (person == houseOwner) {          //如果是房主,则租房者获得信息tenant.getMessage(message);} else {       //反正则是房主获得信息houseOwner.getMessage(message);}}
}

写测试类:

//测试类
public class Client {public static void main(String[] args) {//一个房主、一个租房者、一个中介机构MediatorStructure mediator = new MediatorStructure();//房主和租房者只需要知道中介机构即可HouseOwner houseOwner = new HouseOwner("张三", mediator);Tenant tenant = new Tenant("李四", mediator);//中介结构要知道房主和租房者mediator.setHouseOwner(houseOwner);mediator.setTenant(tenant);tenant.constact("我要租三室的房子");houseOwner.constact("我这有三室的房子,帮我问问有人需要租吗?");}
}

运行:

在这里插入图片描述

3、总结

松散耦合,在中介者对象这里集中控制同事对象的交互。但当同事类太多时,中介者类会复杂而庞大。

http://www.yayakq.cn/news/832723/

相关文章:

  • 做婚庆找什么网站长沙营销推广
  • jeecg 做网站网络推广运营推广
  • 我想建立个网站数据怎么办中国空间站简笔画
  • 网站建设工作室图片遵义公司网站制作哪家好
  • 汉沽网站建设制作那个网站百度收录好
  • 一个高端网站设计手机网页版qq
  • 淘宝客的网站是怎么做的网络营销设计公司
  • 网站广告案例有哪些可以做外链的网站
  • 深圳制作网站建设的企业亚马逊没有网站怎么做seo
  • 试客网站程序源码广州网站制作十年乐云seo
  • 微网站建设代运营网站开发合同知识产权
  • 淘宝客网站建设方案书国内专业做悬赏的网站
  • 网站哪个公司做建设集团企业网站
  • 网站开发工程师岗位概要wordpress插件音乐播放器
  • 做网站的宽度为多少钱wordpress 微服务器配置
  • 天津网站seo营销模板同心县建设局网站
  • 网站建设dw站点建设浙江网缘电子商务有限公司
  • 网站建设验收合同长沙新增活动轨迹
  • 自己做微网站柳州网站建设多少钱
  • 做网站设计难吗自己建设网站需要花多少钱
  • 什么是网站推广新手怎么做seo优化
  • 网站 系统设置小程序商城如何运营
  • 学校网站建设的风险分析高端品牌网站设计欣赏
  • 做模型常说的d站是什么网站在线教育网站平台建设的意义
  • 网站建设考察试卷jsp网站项目
  • 如何做好电商网站平面设计十大室内设计师
  • 杭州市住房和城乡建设部网站源代码
  • 做指甲的网站叫什么名字来着如何做自己的网站
  • 河北邢台特色美食网站关键词的优化在哪做
  • 永久免费自助建站wordpress ajax分页插件