桥接模式的定义:
桥接模式又叫作桥梁模式、接口模式或柄体模式,指将抽象部分与具体实现部分分离,使它们都可以独立的变化,属于结构性模式。
桥接模式的主要目的是通过组合的方式建立两个类之间的联系,而不是继承,但又类是多重继承方案。但是多重继承方案往往违背了类
的单一职责原则,其复用性比较差,桥接模式是比多重继承方案更好的替代方案。桥接模式的核心在于把抽象与实现解耦。
桥接模式的运用场景:
在抽象和具体实现之间需要增加更多灵活性的场景。
一个类存在两个或多个独立变化的维度,而这两个或多个维度都需要独立进行扩展。
不希望使用继承,或因为多继承导致系统类的个数剧增。
使用桥接模式设计稍复杂得消息系统:
具给例子,我们在平时办公得时候经常通过邮件消息、短信消息、或者系统内消息与同时进行沟通。消息又会有紧急程度之分,分为
普通消息、加急消息和特急消息。显然,整个消息系统可以划分为两个维度,下面我们来看看通过桥接模式如何解决这个问题,先创建一个
IMessage接口担任桥接的角色类。
public interfaceIMessage {//发送消息的内容和接收人
voidsend(String message,String toUser);
}
创建邮件消息实现类EmailMessage类。
public class EmailMessage implementsIMessage {public voidsend(String message, String toUser) {
System.out.println("使用邮件消息发送" +