适配器模式与桥梁模式的区别【面试题详解】

今天爱分享给大家带来适配器模式与桥梁模式的区别【面试题详解】,希望能够帮助到大家。
适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹
配而无法在一起工作的两个类能够在一起工作。又称为转换器模式、变压器模式、包装模式
(把已有的一些类包装起来,使之能有满足需要的接口)。适配器模式的用意是将接口不同
而功能相同或者相近的两个接口加以转换,包括适配器角色补充一些源角色没有但目标接口
需要的方法。就像生活中电器插头是三相的,而电源插座是两相的,这时需要一个三相变两
相的转换器来满足。
比如,在 Java I/O 库中使用了适配器模式,象 FileInputStream 是一个适配器类,其
继 承 了 InputStrem 类 型 , 同 时 持 有 一 个 对 FileDiscriptor 的 引 用 。 这 是 将 一 个
FileDiscriptor 对象适配成 InputStrem 类型的对象形式的适配器模式。StringReader 是一
个适配器类,其继承了 Reader 类型,持有一个对 String 对象的引用。它将 String 的接口
适配成 Reader 类型的接口。等等。
桥梁模式的用意是要把实现和它的接口分开,以便它们可以独立地变化。桥梁模式并不
是用来把一个已有的对象接到不相匹配的接口上的。当一个客户端只知道一个特定的接口,
但是又必须与具有不同接口的类打交道时,就应该使用桥梁模式。
比如,JDBC 驱动器就是一个桥梁模式的应用,使用驱动程序的应用系统就是抽象化角色,
而驱动器本身扮演实现化角色。应用系统和 JDBC 驱动器是相对独立的。应用系统动态地选
择一个合适的驱动器,然后通过驱动器向数据库引擎发出指令就可以访问数据库中的数据。

人已赞赏
Java

DAO 设计模式与 DELEGATE 模式【面试题详解】

2020-12-11 11:06:57

Java

开发中都用到了那些设计模式?用在什么场合?【面试题详解】

2020-12-11 11:07:36

'); })();