`
hanlingbo2008
  • 浏览: 79977 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

桥梁(Bridge)模式

阅读更多

9、桥梁(Bridge)模式

  

     桥梁模式的结构图

这个系统含有两个等级结构:

  • 抽象化角色(abstaction)和修正抽象化角色(RefinedAbstraction)构成抽象化等级结构
  • 由实现化角色(Implementor)和两个具体实现化角色所构成的实现化等级

Facade模式的角色:

  • 抽象化角色(Abstraction): 保存一个实现化对象的引用,给出抽象化定义
  • 修正抽象化角色(Refined Abstrction): 扩展抽象化角色,改正和修正父类对抽象化的定义
  • 实现化角色(Implementor): 给出实现化角色的接口,但不给出具体的实现
  • 具体实现化角色(Concrete Implementor) : 这个角色给出实现化角色接口的具体实现

实例代码:

/**
 * 抽象化角色 
 */
public abstract class Abstaction {
	protected Implementor imp;
	/**
	 * 某个商业方法
	 */
	public void operation(){
		imp.operationImp();
	}
}

 

/**修正抽象化角色*/
public class RefinedAbstraction extends Abstaction {
	/** 商业方法在抽象化角色的实现 */
	@Override
	public void operation() {
		//修改父类实现逻辑
	}
	
}

 

/**
 *  实现化角色
 */
public abstract class Implementor {
	/**
	 * 某个商业方法的实现化声明
	 */
	public abstract void operationImp();

}

 

/**
 * 具体实现化角色
 */
public class ConcreteImplementorA extends Implementor {
	/**商业方法的实现*/
	@Override
	public void operationImp() {
		System.out.println("Do something...");
	}

}

 

分享到:
评论
1 楼 hanlingbo2008 2008-11-15  
问题:
空中巴士(airbus)、波音(Boeing)、麦道(McDonnell-Douglas)、都是飞机制造商,它们都生产载客飞机(Passenger plane)和载货飞机(Cargo Plane)。现在需要设计一个系统,描述这些飞机制造商和它们所制造的飞机种类。


--- 使用birge模式

相关推荐

    设计模式C++学习之桥梁模式(Bridge)

    设计模式C++学习之桥梁模式(Bridge)

    学习php设计模式 php实现桥梁模式(bridge)

    一、桥梁模式结构图   二、桥梁模式中主要角色 抽象化(Abstraction)角色:定义抽象类的接口并保存一个对实现化对象的引用。 修正抽象化(Refined Abstraction)角色:扩展抽象化角色,改变和修正父类对抽象化的定义...

    Java24种设计模式,Java24种设计模式,24种设计模式,学会了这24种设计模式,可以打遍天下无敌手,设计模式非常重要

    11、桥梁模式BRIDGE PATTERN 12、命令模式COMMAND PATTERN 13、装饰模式DECORATOR PATTERN 14、迭代器模式ITERATOR PATTERN 15、组合模式COMPOSITE PATTERN 16、观察者模式OBSERVER PATTERN 17、责任链模式 18、...

    C#设计模式.PDF

    五、 另外一个实际应用Bridge模式的例子 153 六、 在什么情况下应当使用桥梁模式 158 设计模式(17)-Chain of Responsibility Pattern 158 一、 职责链(Chain of Responsibility)模式 160 二、 责任链模式的结构...

    C#设计模式大全

    五、 另外一个实际应用Bridge模式的例子 六、 在什么情况下应当使用桥梁模式 设计模式(17)-Chain of Responsibility Pattern 一、 职责链(Chain of Responsibility)模式 二、 责任链模式的结构 三、 责任...

    JAVA设计模式.rar

    策略模式【STRATEGY PATTERN】 ...桥梁模式【BRIDGE PATTERN】  命令模式【COMMAND PATTERN】  装饰模式【DECORATOR PATTERN】 迭代器模式【ITERATOR PATTERN】  组合模式【COMPOSITE PATTERN】 ......

    bridge-example:马尔马拉大学 OOP 课堂作业 - 桥梁设计模式示例

    桥接示例马尔马拉大学 OOP 课堂作业 - 桥梁设计模式示例

    PHP设计模式(六)桥连模式Bridge实例详解【结构型】

    本文实例讲述了PHP设计模式:桥连模式Bridge。分享给大家供大家参考,具体如下: 1. 概述  在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向...

    java设计的4种模式

    如桥梁模式(Bridge Pattern) 定义:Decouple an abstraction from its implementation so that the two can vary independently.(将抽象和实现解耦,使得两者可以独立地变化。) ● Abstraction——抽象化角色 它...

    源码:阎宏设计模式光盘

    com.javapatterns.bridge 桥梁模式 com.javapatterns.builder 建造者模式 com.javapatterns.carp 组合/聚合复用原则 com.javapatterns.chainofresp 责任链模式 com.javapatterns.chainofresp.scheduler 专题:...

    java26个设计模式

    桥梁Bridge 不变Immutable 策略Strategy 模版Template 观察者Observer 命令Command 备忘录Memento 状态State 访问者Visitor 解释器Interpreter 调停者Mediator Iterator 责任链Chain of Responsibility

    C#23种设计模式_示例源代码及PDF

    桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是说将他们之间的强关 桥梁模式 联变成弱关联,也就是指在一个软件系统的抽象化和实现化之间使用组合/聚合关系而不是 继承关系,从而使两者可以独立的...

    24个设计模式与6大设计原则

    第 11 章 桥梁模式【BRIDGE PATTERN】 97 第 12 章 命令模式【COMMAND PATTERN】 112 第 13 章 装饰模式【DECORATOR PATTERN】 126 第 14 章 迭代器模式【ITERATOR PATTERN】 137 第 15 章 ...

    hassio-ring-bridge:家庭助理插件 (Hassio) 充当 Ring API 的桥梁

    家庭助理的环桥,暴露获取/设置位置模式。 Ring 令牌会自动刷新。 该桥接器可用于根据居民的自动存在检测自动设置环形定位模式,从而在家里启用混合传感器和全自动报警系统,例如以下内容。 安装 在 Home Assistant...

    Bridge-school:桥梁学校网站

    该主题包含几个内容部分,具有悬停效果的响应式投资组合网格,整页投资组合项目模式,响应式时间表和有效PHP联系人表格。 预览 地位 下载及安装 要开始使用此模板,请选择以下选项之一以开始使用: 通过npm安装: ...

    google_sdk_android5

    bridge)模式 桥梁模式是一个非常有用的模式,也是比较复杂的一个模式。熟悉这个模式对于理解面向对象的设计原则,包括"开-闭

    dp-bridge:桥接DP的实现示例

    桥梁设计模式示例 尽管此项目不是基于任何特定的教程,但是在实现代码时,我主要使用解释作为主要参考。 项目概况 该项目没有GUI,因为目标是了解结构。 我们的想法是,我们有三个要应用于数据的过滤器。 ...

    微前端iframe双向通信TS编译npm仓储源码

    2.发送消息时不支持消息的回调,也就是说发布订阅模式,不支持同一条消息的反向通信 综上两个问题给开发造成了很多设计及代码量上的麻烦 利用window对象提供的以上方法,我们做一下简单的封装,能很好地解决以上两...

Global site tag (gtag.js) - Google Analytics