我怀疑。使用复合模式实现Map.putAll(Map
)方法,我想知道,它是否正确?
因为PutAll()
方法存在于Map的所有死者中,无论叶子还是非叶子。
我的疑问是,在复合类add(Composite)
中将出现在非叶类中,但在Map中它出现在接口级别,这意味着即使叶类具有到组件的聚合链接,这也是矛盾的复合设计模式的类图,因为它显示了从复合到组件的聚合链接,而不是从叶到组件。请帮助
由于 Praveen B
答案 0 :(得分:0)
来自wikipedia:
复合模式描述了一组对象的处理方式与对象的单个实例相同。复合的意图是将对象“组合”成树结构以表示部分整体层次结构。通过实现复合模式,客户可以统一处理单个对象和组合。
通过阅读本文,您应该回答您的问题: 地图不是复合
当你写:
map1.putAll(MAP2)
您没有在map1和map2之间创建父子关系。您只需将所有map2内容放在map1中。