跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

java设计模式:桥接模式抽象化与实现化解耦的理解

桥接模式:将抽象部分与他的实现部分分离,这样抽象化与实现化解耦,使他们可以独立的变化。 通过桥接(接口)将抽象部分和实现部分解耦,桥接是一个接口,实现方继承这个接口,抽象方在抽象类中调用接口中的方法指向实现方。这样实现方通过实现桥接口进行单方面扩展,而抽象方通过继承抽象类进行单方面扩展,两者通过桥接口调用,而接口不受双方扩展的影响。 UML类图:
interface Driver { public void connect(); } class MysqlDriver implements Driver { @Override public void connect() { System.out.println("连接Mysql数据库"); } } class OracleDriver implements Driver { @Override public void connect() { System.out.println("连接Oracle数据库"); } } //抽象类 abstract class Bridge { private Driver driver; public void connect() { driver.connect(); } public void setDriver(Driver driverTemp) { this.driver = driverTemp; } public Driver getDriver() { return this.driver; } } //实现类 class MyBridge extends Bridge { } //测试类 public class BridgeTest { public static void main(String[] args) { Bridge mysqlBridge = new MyBridge(); Driver mysqlDriver = new MysqlDriver(); mysqlBridge.setDriver(mysqlDriver); mysqlBridge.connect(); OracleDriver oracleDriver = new OracleDriver(); mysqlBridge.setDriver(oracleDriver); mysqlBridge.connect(); } }
桥接模式是有方向性的,桥绑定的一方是被调用者,属于被动方,抽象方属于主动方。 桥接模式降低的代码的耦合度,提高的系统的可扩展性,实现细节透明化。但是桥接模式的引入加大了系统的理解和设计难度 相关文章: 立即学习 “ Java免费学习笔记(深入) ”; Java设计模式中关于桥接模式的详解 JavaScript设计模式系列六:桥接模式 相关视频: JavaScript设计模式完整视频教程

相关文章