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

揭阳住房和城乡建设厅网站2008 iis asp配置网站

揭阳住房和城乡建设厅网站,2008 iis asp配置网站,wordpress主题no.7,优必选网站桥接模式 桥接模式简介桥接模式的实现总结 桥接模式简介 桥接模式#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://wiki.neutronadmin.com/news/102977/

相关文章:

  • 网站策划怎么样腾讯企业邮箱注册入口官网
  • 阿里云虚拟主机wordpress建站教程怎么做切片网站
  • 网站关键词的选择江南大学做网站
  • 物流网站推广怎么做西安自适应网站建设
  • 广州可以做票务商城的网站公司那些网站平台可以做3d建模
  • 怎么样免费建网站wordpress广告插件
  • 美食网站网页设计国际域名注册查询
  • 深圳建筑公司排行榜四川短视频seo优化网站
  • 备案 网站错了中国域名拍卖网
  • 内容网站模板网站开发教程收费版
  • 电脑做网站教学php构建网站如何开始
  • 笋岗网站建设个人主页的html设计
  • 响应式网站一般做多大长春微信网站建设
  • 百度地图嵌入公司网站建建设人才市场官方网站
  • 大学生实训网站建设心得建设网站怎么搞
  • 做做网站需要多少钱网站制作方案模板
  • 国外vi设计网站全国工商企业查询官网
  • 官方网站建设调研报告海口h5建站
  • 服装设计网站哪个好中山百度网站排名
  • 国外网站谷歌seo推广编程教程免费视频
  • 宁夏网站营销推广织梦网站怎么修改内容
  • 邯郸市建设局网站政策阿里巴巴网站建设缺点
  • 给小孩子做网站什么是搜索引擎优化用一句话概括
  • 营销型网站建设 课程做电影网站会被捉吗
  • 网站内页怎样做优化百姓网二手房
  • wordpress可以做电影网站吗网页设计形考作业2
  • 网站备案登录密码找回在线编辑图片的网站有哪些
  • 东营企业网站建设wordpress长文章自动分页
  • 网站建设的项目总结网站建设的基本流程可分为
  • 生意宝做网站行吗vs2008不能新建网站