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

企业为什么要做建站新洲建设局网站

企业为什么要做建站,新洲建设局网站,福建福州最新情况,专门做流程图的网站桥接模式 桥接模式简介桥接模式的实现总结 桥接模式简介 桥接模式#xff08;Bridge#xff09;是将抽象部分与它的实现部分分离#xff0c;使它们都可以独立地变化。它是一种对象结构型模式#xff0c;又称为柄体(Handle and Body)模式或接口(Interfce)模式。 桥接模式基于… 桥接模式 桥接模式简介桥接模式的实现总结 桥接模式简介 桥接模式Bridge是将抽象部分与它的实现部分分离使它们都可以独立地变化。它是一种对象结构型模式又称为柄体(Handle and Body)模式或接口(Interfce)模式。 桥接模式基于类的最小设计原则通过使用封装、聚合及继承等行为让不同的类承担不同的职责。它的主要特点是把抽象(Abstraction)与行为实现(Implementation)分离开来从而可以保持各部分的独立性以及应对他们的功能扩展。 桥接模式遵循了里氏替换原则和依赖倒置原则最终实现了开闭原则对修改关闭对扩展开放。 桥接模式的实现 桥接Bridge模式包含以下主要角色。 抽象化Abstraction角色 定义抽象类并包含一个对实现化Implementor角色的引用。Abstraction 充当桥接类。 扩展抽象化Refined Abstraction角色 是抽象化Abstraction角色的子类实现父类中的业务方法并通过组合关系调用实现化Implementor角色中的业务方法。 实现化Implementor角色 定义实现化角色的接口供扩展抽象化Refined Abstraction角色调用。 具体实现化Concrete Implementor角色 给出实现化Implementor角色接口的具体实现。 定义实现化角色的接口 public interface Brand {void open();void close();void call(); }定义具体实现化角色给出实现化Implementor角色接口的具体实现。 定义具体实现化角色1 public class XiaoMi implements Brand{Overridepublic void open() {System.out.println(小米手机开机);}Overridepublic void close() {System.out.println(小米手机关机);}Overridepublic void call() {System.out.println(小米手机打电话);} }定义具体实现化角色2 public class Vivo implements Brand{Overridepublic void open() {System.out.println(Vivo手机开机);}Overridepublic void close() {System.out.println(Vivo手机关机);}Overridepublic void call() {System.out.println(Vivo手机打电话);} }定义抽象化Abstraction角色里面包含了对实现化角色的接口的引用 public abstract class Phone {//组合Brand接口private Brand brand;public Phone(Brand brand){super();this.brand brand;}//调用接口里的方法当该类的子类调用该类的方法时就会调用到接口里的方法protected void open(){brand.open();}protected void close(){brand.close();}protected void call(){brand.call();} }定义扩展抽象化Refined Abstraction角色是抽象化Abstraction角色的子类实现父类中的业务方法并通过组合关系调用实现化Implementor角色中的业务方法。 public class FoldedPhone extends Phone{public FoldedPhone(Brand brand){super(brand);//调用父类的构造器初始化}public void open(){super.open();//通过组合关系调用实现化Implementor角色中的业务方法System.out.println(折叠样式手机);}public void close(){super.close();System.out.println(折叠样式手机);}public void call(){super.call();System.out.println(折叠样式手机);} }定义客户端测试桥接模式 public class Client {public static void main(String[] args) {FoldedPhone phone new FoldedPhone(new XiaoMi());phone.open();phone.close();phone.call();System.out.println();FoldedPhone phone1 new FoldedPhone(new Vivo());phone1.open();phone1.close();phone1.call();} }当我们要增加一个扩展抽象化Refined Abstraction角色只需继承抽象化Abstraction角色桥接类即可. 总结 优点 抽象与实现分离扩展能力强符合开闭原则符合合成复用原则其实现细节对客户透明 缺点 由于聚合关系建立在抽象层要求开发者针对抽象化进行设计与编程能正确地识别出系统中两个独立变化的维度这增加了系统的理解与设计难题 注意事项 实现了抽象和实现部分的分离从而极大的提供了系统的灵活性让抽象部分和实现部分独立开来这有助于系统进行分层设计从而产生更好的结构化系统。 对于系统的高层部分只需要知道抽象部分和实现部分的接口就可以了其它的部分由具体业务来完成。 桥接模式替代多层继承方案可以减少子类的个数降低系统的管理和维护成本。 桥接模式的引入增加了系统的理解和设计难度由于聚合关联关系建立在抽象层要求开发者针对抽象进行设计和编程 桥接模式要求正确识别出系统中两个独立变化的维度因此其使用范围有一定的局限性即需要有这样的应用场景。 桥接模式通常适用于以下场景 当一个类存在两个独立变化的维度且这两个维度都需要进行扩展时。当一个系统不希望使用继承或因为多层次继承导致系统类的个数急剧增加时。当一个系统需要在构件的抽象化角色和具体化角色之间增加更多的灵活性时。
http://www.huolong8.cn/news/179346/

相关文章:

  • 建设银行官网站下载wordpress数据调用
  • 网站建设项目策划书范文17做网站郑州
  • 印刷网站建设wordpress程序员博客主题
  • 佛山网站优化多少钱网站备案 种类
  • 做网站公司怎么赚钱郑州抖音代运营公司
  • 网站qq联系怎么做织梦网站后台logo删除
  • 网站管理包括哪些内容网络服务器忙3008
  • 贵阳seo网站推广优化鄂州做网站多少钱
  • vps里面怎么建立网站哪些调查网站可以做问卷赚钱
  • 网站建设成本控制公司为什么要网站备案
  • 营口建设工程信息网站山东省中国建设银行网站
  • 网站建设与运行乐山建设局网站
  • 优化网站seo公司河南省中招考生服务平台
  • 怎么更改网站备案信息吗北京公司摇号中签率
  • 南京定制网站哪个好品牌排行榜哪个网站更权威
  • 深圳市南山网站建设专业做网站建设建站
  • 织梦做中英文网站步骤天津做网站优化的公司
  • 简约大方的网站购物网站 wordpress 英文模板
  • 莱芜住房和城乡建设部网站2021互联网公司100强
  • 网站建设达到什么水平食品网站建设风格
  • 河南建设工程信息网站郑州高新开发区民政局开标情况自己怎样做网站
  • 手机与pc网站同步模板济宁市中网站建设
  • 福州 网站建设网站建设公司赚钱吗
  • 微电影网站源码wordpress特点
  • 丰台做网站的公司专业做小程序公司有哪些
  • 四川省建设厅网站首页wordpress修改作者链接
  • 网站的访问量怎么查html5开发的网站
  • 找设计师做网站网站建设成为
  • 网站外链建设方法百度代理加盟
  • 银行管理系统网站建设什么物流公司网站建设