桥和接口之间的区别

use*_*875 4 design-patterns

据我所知,Bridge模式的目的是引用维基百科"将抽象与其实现分离".那不就是接口的作用.通过决定接口并强制类使用该接口,任何其他类都可以与此接口进行交互,而无需任何有关内部工作的知识.

那么一个接口相当于一个Bridge?

Aar*_*lla 9

接口只是意味着"公共API"的东西:这是你编写软件的合同.Java使用关键字interface来定义没有包含此类契约的代码的类.

桥模式是一种设计模式.它代表脱钩.您可以说Java接口是实现此模式的一种方式.

请注意,桥接器通常会公开完整的API,而Java接口只能暴露部分API.示例:您有一个Foo包含两种方法的类:bar()baz().

桥是指具有相同公共API的任何桥Foo,可以在任何可以使用的地方Foo使用.

使用接口,您可以拥有两个.一个包含bar()和另一个baz().任何实现它们的类都是有效的实现,Foo但是你也可以拥有只实现其中一个的类.