组合模式:允许你将对象组合成树形结构来表现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象以及对象组合。


在我看来,组合模式是用来屏蔽节点与叶子的区别的,在实际使用中我还真没想出有用过这种做法。不过看书上的菜单的介绍确实还是挺符合这种情况的。我们在使用菜单的时候,菜单下面同时有菜单项和子菜单,子菜单下面又有菜单项,点击菜单项会展示对应功能,点击子菜单会显示子菜单下面的节点。组合模式可以屏蔽菜单项和子菜单的差别。

设计模式阅读笔记(10)-----------------组合模式

Leaf实现了相应的operation操作,Composite作为菜单,里面包含了菜单项和子菜单,即Leaf和子Composite。对于用户Client来说,不需要知道操作的是Leaf还是Composite,对客户来说,操作的是Component,通过迭代器,就可以遍历菜单下所有的菜单项了。


相关文章:

  • 2021-09-17
  • 2021-09-07
  • 2021-06-13
  • 2021-09-19
  • 2021-12-22
  • 2021-11-20
  • 2021-08-13
  • 2021-12-09
猜你喜欢
  • 2021-08-08
  • 2022-03-04
  • 2021-05-04
  • 2021-10-27
  • 2021-08-13
  • 2021-06-01
  • 2021-10-13
相关资源
相似解决方案