您好,欢迎访问代理记账网站
  • 价格透明
  • 信息保密
  • 进度掌控
  • 售后无忧

java设计模式-结构型-桥接模式

  • 定义:抽象部分与它的具体实现部分分离,使他们都可以独立变化
  • 通过组合的方式建立两个类之间的联系,而不是继承
  • 适用场景

         抽象和具体之间增加更多的灵活性

         一个类存在两个或多个独立变化的维度

  • 缺点

        增加了系统的理解与设计难度

        需要正确识别出系统中两个独立变化的维度

总结:连接两个继承体系。两个继承体系自行发展。一个继承体系的抽象类使用了另一体系中的接口。通过组合的方式。

示例代码

public abstract class Bank {
    protected Account account;
    public Bank(Account account){
        this.account=account;
    }
    protected abstract void openAccount();
}

public class ABCBank extends Bank{
    public ABCBank(Account account) {
        super(account);
    }

    protected void openAccount() {
        System.out.println("打开一个农业银行账户");

    }
}

public class ICBCBank extends Bank{
    public ICBCBank(Account account) {
        super(account);
    }

    protected void openAccount() {
        System.out.println("打开一个工商银行账户");
        account.openAccount();
    }
}
public interface Account {
    public void openAccount();
}
public class FixedAccount implements Account{
    public void openAccount() {
        System.out.println("打开一个定期账户");

    }
}
public class SavingCount implements Account{
    public void openAccount() {
        System.out.println("打开一个活期账户");

    }
}

Test类

public class Test {
    public static void main(String[] args) {
        ICBCBank bank=new ICBCBank(new FixedAccount());
        bank.openAccount();
    }
}

 


分享:

低价透明

统一报价,无隐形消费

金牌服务

一对一专属顾问7*24小时金牌服务

信息保密

个人信息安全有保障

售后无忧

服务出问题客服经理全程跟进