之所以用Bridge而不是直接继承实现主要有两个好处:
2. 接口与实现的分离:实现不一定实现接口的内容,就是说实现同接口之间不是一一对应的,实现可能完成最原子的操作,而接口通过持有一个实现的应用,组装这些操作来实现接口。比如说接口是createRectangle(), 实现可能只完成了createLine的操作,然后有接口来组装。
Composite模式则要从全局的角度考虑对象之间的关系是否满足“树枝”与“树叶”的关系,如果满足,则需要定义一个树枝与树叶的集合接口Tree,既包含树枝接口add(tree)和树叶接口getColor()。
文章来源于领测软件测试网 https://www.ltesting.net/