桥模式:将某个问题抽象的不同形式分别与该问题的具体实现部分相分离,使他们都可以独立变化,并能够动态结合。
例如电视厂商海尔,长虹生产21寸,29寸电视机。从这里要将它们分离出来,就用到桥模式。电视机与电视机生产厂商挂桥,从而,分离出不同厂商的实现,与不同电视机型号的实现.
下面看下uml
[img][/img]
从上图可以看出,将实际抽象分离出来。
看下代码
创建电视机
Java代码
public abstract class Television {
//电视厂商
protected TelevisionMaker televisionMaker;
//收看电视
abstract public void teleview(TelevisionMaker televisionMaker);
}
接下来创建生产厂商
Java代码
public abstract class TelevisionMaker {
abstract public void produce();
}
电视机的型号,即继承电视机类
Java代码
public class Inch21 extends Television{
public void teleview(TelevisionMaker televisionMaker) {
System.out.println("21寸电视");
}
}
Java代码
public class Inch29 extends Television{
public void teleview(TelevisionMaker televisionMaker) {
System.out.println("29寸电视");
}
}
下面是不同厂商,即继承生产厂商
Java代码
public class ChangHong extends TelevisionMaker{
public ChangHong(){
System.out.println("长虹厂商");
}
public void produce() {
System.out.println("长虹厂商");
}
}
Java代码
public class Haier extends TelevisionMaker{
public Haier(){
System.out.println("海尔厂商");
}
public void produce() {
System.out.println("海尔厂商");
}
}
这样就使用了桥模式,将原本繁杂的系统分离开来。如果根据需求变动,要增加电视机生产型号或者电视机生产厂商,只需要实现相对应的抽象类即可。
这样,我们也可以根据用户的需要,得到他所需要的电视机,如长虹厂商出厂的29寸电视机。
测试代码如下:
Java代码
public class Client {
public static void main(String[] args) {
// TODO Auto-generated method stub
Inch29 i = new Inch29();
i.teleview(new ChangHong());
}
}
结果:
长虹厂商
29寸电视
- 大小: 13.2 KB
分享到:
相关推荐
**桥梁模式(Bridge Pattern)详解** 桥梁模式是一种结构型设计模式,它将抽象部分与实现部分分离,使得它们可以独立地进行变化。这种模式的主要目的是为了将抽象化和实现化解耦,使得两者可以独立发展,增加了系统...
### Bridge桥模式详解 #### 一、桥模式概述 **桥模式**(Bridge Pattern)是一种结构型设计模式,它的核心思想在于将一个类的接口与其具体实现分离开来,从而使两者能够独立变化。这种模式通过引入一个抽象层来...
桥梁模式(Bridge Pattern)是设计模式中的一种结构型模式,它的核心思想是将抽象部分与实现部分分离,使得它们可以独立地进行变化。在这个主题中,我们将深入探讨桥梁模式的原理、结构以及如何在Java中实现。 首先...
LEDE项目:桥模式1 LEDE项目中的桥模式是一种特殊的操作模式,允许网关设备将所有流量转发到下游设备,使得设备可以在不同的网络环境中工作。在本文中,我们将详细介绍桥模式的工作原理、类型和应用场景。 桥模式...
桥模式是一种设计模式,主要目的是将抽象部分与其实现部分分离,使得它们可以独立地进行变化。在"桥模式(Qt平台)"中,我们将会看到如何在Qt框架下应用这个模式来增强软件的可扩展性和灵活性。Qt是一个流行的开源跨...
桥模式是一种结构型设计模式,它将抽象部分与其实现部分分离,使它们可以独立进行变化。在C++中,这种模式尤其有用,因为它允许我们通过指针或引用灵活地组合对象,从而实现多态性。 桥模式的核心在于将抽象...
**SCALANCE W 桥模式使用指南** 西门子的SCALANCE W系列是专为工业无线网络设计的一系列产品,它们提供了灵活、安全的无线连接解决方案。在桥模式(Bridge Mode)下,SCALANCE W设备可以作为两个或多个网络之间的...
【桥梁模式】是一种重要的设计模式,它属于对象的结构模式,有时也被称作柄体模式或接口模式。该模式的主要目的是将抽象部分与其实现部分分离,使它们能够独立进行变化。这种分离使得抽象和实现可以独立发展,提高了...
【基于Linux下桥模式的入侵检测系统研究】 在网络安全领域,入侵检测系统(Intrusion Detection System, IDS)扮演着至关重要的角色。传统的IDS通常分为基于网络的(NIDS)和基于主机的(HIDS)。NIDS通过监听网络...
《SANGFOR_WOC_v9.1_双网桥模式部署配置指导书》是由深信服科技有限公司编写的,旨在为用户提供详细的操作指南,帮助他们正确配置和部署双网桥模式的SANGFOR_WOC设备。文档包含了版本信息、修订历史以及使用反馈的...
《LEDE项目:可怜的人桥模式1》 在IT行业中,网络配置是一项至关重要的任务,特别是在家庭或小型企业网络环境中。本文主要探讨的是在没有硬件桥接功能的情况下,如何通过LEDE路由器实现一种称为“可怜的人桥模式”...
《桥梁模式DEMO》 桥梁模式是一种结构型设计模式,它将抽象部分与其实现部分分离,使它们可以独立地进行变化。这个模式的核心思想是将抽象类与实现类解耦,使得两者可以通过多态性独立发展,从而提高了系统的可扩展...
- **状态模式**:状态模式关注于对象状态的转换,而桥梁模式处理的是抽象与实现的关系,两者在结构上有相似之处,但在应用场景上不同。 ### 五、PHP 示例 在给定的PHP代码示例中,`Abstraction` 类定义了抽象化...
西门子SCALANCE W桥模式使用指南zip,西门子SCALANCE W桥模式使用指南: 本文描述了SCALANCE W模块中的一些桥功能,例如VLAN和生成树协议。并阐述了桥功能协议的基本原理。而且通过一些具体的配置实例说明了使用这些...
行业资料-交通装置-一种基于桥模式的数据库审计方法.zip
桥模式(Bridge模式)是一种设计模式,主要用于将抽象部分与实现部分解耦,使得它们能够独立地变化。在Java中,这种模式可以帮助我们构建更加灵活和可扩展的系统。以下是关于桥模式的详细解释: 首先,理解桥模式的...
桥模式:将对摸个问题抽象的不同形式分别于该问题的具体实现部分相互分离,是它们都可以独立的裱花,并且能动态的结合。这个模式是面向对象的接口隔离原则的典型实现和具体的应用。使用桥模式可以讲对问题的抽象的...
中继网桥可以由单个桥接器配备分路器,或者两个桥接器背靠背工作于不同频段的无线网桥模式,以满足不同带宽需求。 总的来说,无线网桥在远程网络互连中扮演着重要角色,其应用模式多样,能够适应各种复杂的环境和...
设计模式是软件工程中的一种最佳实践,用于解决在开发过程中经常遇到的问题,提供了一种标准的解决方案。在Java编程中,设计模式的应用广泛且至关重要,能够提高代码的可读性、可维护性和可扩展性。以下是对标题和...
30.1 工厂方法模式VS建造者模式 30.1.1 按工厂方法建造超人 30.1.2 按建造者模式建造超人 30.1.3 最佳实践 30.2 抽象工厂模式VS建造者模式 30.2.1 按抽象工厂模式生产车辆 30.2.2 按建造者模式生产车辆 30.2.3 最佳...