桥接模式:
将抽象部分与它的实现部分分离,使他们多可以独立的变化。抽象与实现分离,表示抽象类和他的派生类用来实现自己的对象。
在系统中,可能有多角度分类,每一种分类都有可能变化,这时就把这种多角度分离出来让他们独立变化,减少各个角度的耦合。
为了加深对桥接模式的理解,我们来实现一个桥接模式:
想描述某人在某个B2C 网站 购买了某品牌的手机。
首先我们来描述某个B2C 网站出售某品牌手机,由于B2C 网站和 手机品牌的多样性,比较好的方式是分别抽象类来表示B2C 网站和 手机,根据具体情况来继承抽象类。既然B2C 出售手机,那么 B2CShop 类通过保存CellPhone抽象类来表示这种关系。
而Person 类 通过保存 B2CShop 类来表示 某人在某B2C 网站 的购买行为。而B2CShop 本身又保存了CellPhone ,因此串接起来就达到了我们想要的 某人在某B2C 网站购买了某品牌手机 动作。
1. 将首先编写一个 CellPhone 抽象类,以及一个 具体手机品牌类 MotoPhone
2. 编写 B2CShop 和 DangdangShop
3. 编写Person 类和 Women 类
4.编写测试代码
结果输出:
妇女:晓梅 在 当当 买 摩托手机 :E200