使用场景:将对象组合成树形结构来描述部分-整体的层次结构,使得用户对单个对象和组合对象的使用具有一致性。
包含要素:
Component:叶子节点和非叶子节点的共同点的抽象
Leaf:叶子节点
Composite:非叶子节点
使用demo:一个公司有管理者,下面有下属,也有底层员工,下面没有下属。现在需要查询员工信息,员工基本信息及下属人员。

员工基本信息


管理者信息,组合模式的重点,非叶子节点组合其他非叶子节点和叶子节点

通过递归方式遍历整个树
使用场景:将对象组合成树形结构来描述部分-整体的层次结构,使得用户对单个对象和组合对象的使用具有一致性。
包含要素:
Component:叶子节点和非叶子节点的共同点的抽象
Leaf:叶子节点
Composite:非叶子节点
使用demo:一个公司有管理者,下面有下属,也有底层员工,下面没有下属。现在需要查询员工信息,员工基本信息及下属人员。