一、介绍
桥接模式(Bridge),将抽象部分与它的实现部分分离,使它们都可以独立地变化。
桥接模式的核心意图是把这些实现独立出来,让它们各自变化。这就使得每种实现的变化不会影响其他实现,从而达到应对变化的目的。
二、代码实现
public abstract class HandsetSoft { // 运行 public abstract void run(); } public class HandsetAddressSoft extends HandsetSoft{ // 运行 @Override public void run() { System.out.println("手机通许录"); } } public class HandsetGameSoft extends HandsetSoft{ // 运行 @Override public void run() { System.out.println("手机游戏"); } } public abstract class HandsetBrand { protected HandsetSoft soft; public void setSoft(HandsetSoft soft) { this.soft = soft; } public abstract void run(); } public class HandsetBrandM extends HandsetBrand { @Override public void run(){ System.out.println("M品牌"); soft.run(); } } public class HandsetBrandN extends HandsetBrand { @Override public void run(){ System.out.println("N品牌"); soft.run(); } }
测试
public class Client { public static void main(String[] args) { //HandsetGame gam=new HandsetBrandNGame(); HandsetBrand handsetBrandM = new HandsetBrandM(); handsetBrandM.setSoft(new HandsetGameSoft()); handsetBrandM.run(); handsetBrandM.setSoft(new HandsetAddressSoft()); handsetBrandM.run(); HandsetBrand handsetBrandN = new HandsetBrandN(); handsetBrandN.setSoft(new HandsetGameSoft()); handsetBrandN.run(); handsetBrandN.setSoft(new HandsetAddressSoft()); handsetBrandN.run(); } }