首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Bridge方式

2012-10-25 
Bridge模式我要用36种蜡笔(http://www.niufish.com/books/Pattern/com/niufish/pattern/bridge/package-us

Bridge模式


我要用36种蜡笔
Bridge方式


(http://www.niufish.com/books/Pattern/com/niufish/pattern/bridge/package-use.html)


代码如下:


简单之极,以至于我觉得没有必要给出代码。但是第一次写文章,总要给大家留点好印象。

public class FileEditable implements Editable {
    Editor editor;
    String filePath;
 
    public FileEditable(Editor editor, String filePath) {
        this.editor = editor;
        this.filePath = filePath;
    }
 
    public void open() {
        editor.openFile(filePath);
    }
 
}


虽然我前面已经说了,Abstraction和Implementor的聚合关系可以由派生类RefinedAbstraction和Implementor的聚合关系代替,为了与经典模式类图保持尽量的相似,以便大家容易理解,我们还是在StringEditable和FileEditable上面加了一层:EditableImpl。


好了,我们已经实现了Bridge模式。不过这里面还是有一点让人不舒服的地方,就是Editor中包含的两个方法,实际上对应了两种Editable。也许是这个例子举的不好。但是《设计模式 explained》中的例子和本例大同小异。

设计模式速查,很不错

热点排行