首页 > 代码库 > java设计模式--桥接模式

java设计模式--桥接模式

桥接模式(bridge):适用于多层继承机构 ,最少两个维度。

比如 日志管理

1.按格式分类

        操作日志,交易日志

2.按距离分类

        本地记录日志,异地记录日志

 

普通的多层次继承

//普通多层次结构继承public interface Computer {    void sale();    }//台式机class Desktop implements Computer{    public void sale() {        System.out.println("台式机");            }    }//笔记本class Laptop implements Computer{    public void sale() {        System.out.println("笔记本");            }    }//联想台式机class LenovoDesktop extends Desktop{        public void sale() {        System.out.println("联想台式机");            }}//联想笔记本class LenovoLaptop extends Laptop{        public void sale() {        System.out.println("联想笔记本");            }}

桥接模式

//桥接模式public abstract class Computer2 {            protected Pinpai pinpai;    public Computer2(Pinpai pinpai) {        this.pinpai = pinpai;    }        public void sale(){        pinpai.sale();    }        public static void main(String[] args) {        Computer2 computer2 = new Desktop2(new Lenovo());        computer2.sale();            }    }class Desktop2 extends Computer2{    public Desktop2(Pinpai pinpai) {        super(pinpai);    }        public void sale(){        super.sale();        System.out.println("台式机");    }    }class Laptop2 extends Computer2{    public Laptop2(Pinpai pinpai) {        super(pinpai);    }        public void sale(){        super.sale();        System.out.println("笔记本");    }    }
//品牌public interface Pinpai {        void sale();}class Lenovo implements Pinpai{    public void sale() {        System.out.println("联想");    }    }class Dell implements Pinpai{    public void sale() {        System.out.println("戴尔");            }    }

把两种分类分离开来。

在一种类别中引入另一种,利用组合的方式实现多层继承结构

优点:相互独立,容易扩展

 

java设计模式--桥接模式