`
edwin492
  • 浏览: 112628 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

设计模式之桥(bridge)

阅读更多

将抽象部分与它的实现部分分离,使之都可以独立的变化。

 

AbstractLogImpl 与 AbstractLog即构成日志与平台之间的桥梁,实现日志与平台的多种组合。
public class Bridge {
	// 日志
	abstract class AbstractLog {
		protected AbstractLogImpl abstractLogImpl;
		
		public void setAbstractLogImpl(AbstractLogImpl abstractLogImpl) {
			this.abstractLogImpl = abstractLogImpl;
		}

		public abstract void printLog();
	}

	class DbLog extends AbstractLog {
		public void printLog() {
			abstractLogImpl.runPlatform();
			System.out.println("dabase log...");
		}
	}

	class FileLog extends AbstractLog {
		public void printLog() {
			abstractLogImpl.runPlatform();
			System.out.println("file log...");
		}
	}

	// 平台
	abstract class AbstractLogImpl {
		abstract void runPlatform();
	}

	class Windows extends AbstractLogImpl {
		public void runPlatform() {
			System.out.println("run in windows");
		}
	}

	class Linux extends AbstractLogImpl {
		public void runPlatform() {
			System.out.println("run in linux");
		}
	}
	
	public static void main(String[] args){
		Bridge bridge = new Bridge();
		AbstractLog al = bridge.new DbLog();
		AbstractLogImpl ali = bridge.new Windows();
		al.setAbstractLogImpl(ali);
		//平台与日志组合windows与dblog 
		al.printLog();
	}
}
分享到:
评论

相关推荐

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

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

    Java设计模式之桥模式(Bridge模式)介绍

    主要介绍了Java设计模式之桥模式(Bridge模式)介绍,本文讲解了为什么使用桥模式、如何实现桥模式、Bridge模式在EJB中的应用等内容,需要的朋友可以参考下

    桥模式Bridge.rar

    桥模式(Qt平台)

    JAVA设计模式之结构模式

    这是JAVA设计模式中属于结构模式的部分,包括Flyweight(共享模式)、Bridge(桥模式)、Decorator(装饰模式)、Composite(组合模式)、Adapter(适配器模式)、Proxy(代理模式)、Facade (外观模式)的源代码。其中有些模式中...

    C#设计模式.PDF

    设计模式(16)-Bridge Pattern 144 一、 桥梁(Bridge)模式 144 二、 桥梁模式的结构 145 三、 桥梁模式的示意性源代码 146 四、 调制解调器问题 149 五、 另外一个实际应用Bridge模式的例子 153 六、 在什么情况...

    C#设计模式大全

    设计模式(16)-Bridge Pattern 一、 桥梁(Bridge)模式 二、 桥梁模式的结构 三、 桥梁模式的示意性源代码 四、 调制解调器问题 五、 另外一个实际应用Bridge模式的例子 六、 在什么情况下应当使用桥梁模式...

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

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

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

    主要介绍了php设计模式中的桥梁模式,使用php实现桥梁模式,感兴趣的小伙伴们可以参考一下

    [源代码] 《易学 设计模式》 随书源代码

    第13章 游刃有余:桥模式 (Bridge) 第14章 如法炮制:组合模式 (Composite) 第15章 源源不断:享元模式 (Flyweight) 第16章 按部就班:模板方法模式 (TemplateMethod) 第17章 风吹草动:观察者模式 (Observer) 第18...

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

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

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

    多 迭代子模式 个对象聚在一起形成的总体称之为聚集, 聚集对象是能够包容一组对象的容器对象。 迭代 子 模式将迭代逻辑封装到一个独立的子对象中, 从而与聚集本身隔开。 迭代子模式简化了聚集 的界面。每一个聚集...

    java26个设计模式

    工厂模式Factory 原始Prototype 单例Singleton 建造Builder 多例Multiton 适配器Adepter 装饰Decorator 合成Composite 代理Proxy 享元Flyweight 门面Facade 桥梁Bridge 不变Immutable 策略Strategy 模版Template ...

    23种java设计模式

    2、结构模式:Flyweight(共享模式)、Bridge(桥模式)、Decorator(装饰模式)、Composite(组合模式)、Adapter(适配器模式)、Proxy(代理模式)、Facade (外观模式)。3、行为模式:Iterator(迭代模式)、Template(模板...

    二十三种设计模式【PDF版】

    设计模式之 Bridge(桥连) 将牛郎织女分开(本应在一起,分开他们,形成两个接口),在他们之间搭建一个桥(动态的结合) 设计模式之 Flyweight(共享元) 提供 Java运行性能,降低小而大量重复的类的开销. C. 行为模式 ...

    PHP设计模式(2017年8月力作)

    PHP设计模式 Abstract Factory , Builder , Factory Method , Multiton , Pool , Prototype , Simple Factory , Singleton , Static Factory , Structural , Adapter / Wrapper , Bridge , Composite, Data Mapper ,...

    JAVA设计模式.rar

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

    源码:阎宏设计模式光盘

    com.javapatterns.javaio 专题:设计模式在Java I/O中的应用 com.javapatterns.keygen 专题:序列键生成器与单例及多例模式 com.javapatterns.liskov 里氏代换原则 com.javapatterns.lod 迪米特法则 ...

    C++设计模式之桥接模式(Bridge)

    桥接的核心在于实体类和操作类之间的聚合关系,这个聚合关系就是我们所说的”桥”,不同于装饰、代理和适配器模式的中的聚合关系,桥接不存在两者之间的继承关系,操作类是完全解耦的,而实体类对于操作类也只是弱...

Global site tag (gtag.js) - Google Analytics