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

找人做网站内容自己编辑吗国家提供的免费网课平台

找人做网站内容自己编辑吗,国家提供的免费网课平台,网页设计资料,东莞网站制作南城核心: 如果一个系统中对象之间的联系呈现网状结构,对象之间存在大量多对多关系,导致关系及其复杂,这些对象称为“同事对象”。我们可以引入一个中介者对象,使各个同事对象只跟中介者对象打交道,将复杂的网…

核心:

  • 如果一个系统中对象之间的联系呈现网状结构,对象之间存在大量多对多关系,导致关系及其复杂,这些对象称为“同事对象”。
  • 我们可以引入一个中介者对象,使各个同事对象只跟中介者对象打交道,将复杂的网状结构化解为星状结构。

中介者模式本质:

  • 解耦多个同事对象之间的交换关系。每个对象都持有中介者对象的引用,只跟中介者打交道。我们通过中介者对象统一管理这些交互关系。

中介者模式角色

  • 抽象中介者(Mediator): 定义了用于协调各个同事对象之间的交互;
  • 真实中介者(ConcreteMediator): 实现了抽象中介者;一般聚合了所有的同事;
  • 抽象同事类(colleague): 定义了同事自己的方法,并定义了与中介者通信的方法;
  • 具体同事类(ConcreteColleague): 实现抽象同事类;一般持有中介者对象,再与中介者通信;

场景:

  • 一个公司假如没有总经理,这三个部门(财务部、市场部、研发部)互相打交道,虽然只有三个部分,但是关系非常乱:财务部发工资需要市场部和研发部打交道,市场部接个项目,需要和财务部资金支持、研发部技术支持;研发部开发项目需要财务部资金支持。
  • 实际上,公司都有总经理。各个部门有什么事情都报到总经理这里,总经理再通知各个相关部分。
  • 这就是一个典型的中介者模式,总经理起到一个中介、协调的作用。

代码实现

  • 抽象中介者
/*** 抽象中介者*/
public interface Mediator {void register(String dname,Department d);void command(String dname);
}
  • 具体中介者
/*** 真实中介者 总经理*/
class President implements Mediator{private Map<String,Department> map=new HashMap<String, Department>();@Overridepublic void register(String dname, Department d) {map.put(dname, d);}@Overridepublic void command(String dname) {map.get(dname).selfAction();}	 
}
  • 抽象同事类
/*** 抽象同事类   部门接口*/
public interface Department {/*** 做自己的事*/void selfAction();/*** 向总经理发出申请*/void outAction();	
}
  • 具体同事类
/*** 具体部门---研发部*/
public class Development implements Department{/*** 持有中介者的引用*/private Mediator m;  public Development(Mediator m) {this.m = m;m.register("Development",this);}@Overridepublic void selfAction() {System.out.println("研究开发。。。。。");}@Overridepublic void outAction() {System.out.println("需要资金支持。。。。。");	//假设调财务部m.command("Finacial");}
}
/*** 具体部门---财务部*/
public class Finacial implements Department{/*** 持有中介者的引用*/private Mediator m; public Finacial(Mediator m) {this.m = m;m.register("Finacial",this);}@Overridepublic void selfAction() {System.out.println("数钱。。。。。");}@Overridepublic void outAction() {System.out.println("钱太多了,怎么办?。。。。。");m.command("Development");m.command("Market");}
}
/*** 具体部门---市场部*/
public class Market implements Department{/*** 持有中介者的引用*/private Mediator m;  public Market(Mediator m) {this.m = m;m.register("Market",this);}@Overridepublic void selfAction() {System.out.println("接项目。。。。。");}@Overridepublic void outAction() {System.out.println("汇报工作,需要资金支持。。。。。");m.command("Finacial");}
}
  • 客户调用
public static void main(String[] args) {Mediator m=new President();Market k=new Market(m);Development d=new Development(m);Finacial f=new Finacial(m);		f.outAction();
}



更多设计模式学习:

          设计模式(1):介绍
          设计模式(2):单例模式
          设计模式(3):工厂模式
          设计模式(4):建造者模式
          设计模式(5):原型模式
          设计模式(6):桥接模式
          设计模式(7):装饰器模式
          设计模式(8):组合模式
          设计模式(9):外观模式
          设计模式(10):享元模式
          设计模式(11):适配器模式
          设计模式(12):代理模式
          设计模式(13):模板方法模式
          设计模式(14):命令模式
          设计模式(15):迭代器模式
          设计模式(16):观察者模式
          设计模式持续更新中…

http://www.laogonggong.com/news/16902.html

相关文章:

  • 淘客联盟如何做网站推广专业提升关键词排名工具
  • 做网站网址怎么弄重庆网站推广专家
  • 自己做的网站怎么设置文件下载西安百度竞价开户
  • 《动态网站建设》第04章在线测试广州seo排名优化
  • flash网站怎么做音乐停止软文广告经典案例100字
  • 做网站优化词怎么选择关键词制作软件
  • 内蒙古做网站的公司全国疫情最新报告
  • 如何查看网站用什么代码做的外贸网站哪个比较好
  • 重庆微信网站制作公司seo标签怎么优化
  • 怎样做网站备案百度人工智能
  • 响应式网站怎么样seo优化托管
  • 咖啡厅网站建设网站设计软件
  • 郑州网站优化公司哪家好搜索引擎优化的对比
  • 如何请人做网站环球军事网最新消息
  • 建网站怎么选择服务器中山谷歌推广
  • 什么网站做的产品海报比较多网站哪里买外链
  • 怎么做电影网站江苏营销型网站建设
  • 广告制作服务seo标题关键词怎么写
  • 惠州外包网站建设百度认证中心
  • 广州shopify代建站站长工具seo综合查询怎么关闭
  • 免费搭建自助网站百度小说排行榜风云榜单
  • 网站布局方法在线查询网站收录
  • 十堰网站开发培训商丘seo公司
  • 物联网解决方案搜索引擎优化方法有哪些
  • 民治做网站的公司sem优化软件选哪家
  • 广州专业网站建设价格惠州百度关键词优化
  • wordpress主题 storefrontal成都网站排名生客seo怎么样
  • 门头沟富阳网站建设平台推广员是做什么的
  • 做服装批发网站免费网络推广工具
  • 免费下载ppt模板网站有哪些上海百度整站优化服务