设计模式_桥接模式

来源:互联网 发布:java入门教程免费下载 编辑:程序博客网 时间:2024/05/17 08:36

    如果在子类的扩展上有2个维度,如果你想解耦合来解决他们的排列组合时用桥接模式(2个维度排列组合)


  GiftImpl.java

package com.bjsxt.dp.bridge;public class GiftImpl {}

Gift.java

package com.bjsxt.dp.bridge;public class Gift {protected GiftImpl impl;}

Flower.java

package com.bjsxt.dp.bridge;public class Flower extends GiftImpl {}

Ring.java

package com.bjsxt.dp.bridge;public class Ring extends GiftImpl {}

WarmGift.java

package com.bjsxt.dp.bridge;public class WarmGift extends Gift{public WarmGift(GiftImpl impl) {this.impl = impl;}}

WildGift.java

package com.bjsxt.dp.bridge;public class WildGift extends Gift {public WildGift(Ring ring) {this.impl = impl;}}

MM.java

package com.bjsxt.dp.bridge;public class MM {private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}}

Boy.java

package com.bjsxt.dp.bridge;public class Boy {private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}public void pursue(MM mm) {//Gift g = new WarmGift(new Flower()); //温暖的花Gift g = new WildGift(new Ring());     //狂野的戒指//give(g, mm);}public void give(Gift g, MM mm) {}}









 

  

0 0
原创粉丝点击