设计模式之组合模式(Composite)
2017-06-14 11:25
387 查看
组合模式(Composite)
组合模式有时又叫部分-整体模式在处理类似树形结构的问题时比较方便。看看关系图:
直接来看代码:
public class TreeNode { private String name; private TreeNode parent; private Vector<TreeNode> children = new Vector<TreeNode>(); public TreeNode(String name){ this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } public TreeNode getParent() { return parent; } public void setParent(TreeNode parent) { this.parent = parent; } //添加孩子节点 public void add(TreeNode node){ children.add(node); } //删除孩子节点 public void remove(TreeNode node){ children.remove(node); } //取得孩子节点 public Enumeration<TreeNode> getChildren(){ return children.elements(); } }
public class Tree { TreeNode root = null; public Tree(String name) { root = new TreeNode(name); } public static void main(String[] args) { Tree tree = new Tree("A"); TreeNode nodeB = new TreeNode("B"); TreeNode nodeC = new TreeNode("C"); nodeB.add(nodeC); tree.root.add(nodeB); System.out.println("build the tree finished!"); } }
使用场景:将多个对象组合在一起进行操作,常用于表示树形结构中,例如二叉树,树等。
相关文章推荐
- 设计模式之Composite(组合)
- 结构模式——设计模式之Composite(组合)[转载自http://www.jdon.com/]
- 设计模式之Composite(组合)
- 设计模式--组合模式(composite)
- 设计模式笔记--结构型模式之三--组合模式 Composite
- 设计模式(10)-组合模式(Composite)
- 窥视设计模式之组合模式(composite)
- 设计模式中结构型模式(三)组合模式(Composite)
- 设计模式之Composite(组合)
- 窥视设计模式之组合模式(composite)
- 设计模式之Composite(组合)
- java设计模式之Composite(组合) (转)
- C#设计模式之组合(Composite)
- [PHP设计模式]Composite(组合)模式范例
- 设计模式之Composite组合设计模式
- 设计模式----Composite(组合)模式
- 设计模式袖珍版 连续转载之 - Composite(组合)
- 设计模式之Composite(组合)
- 设计模式学习之组合模式(Composite)
- 设计模式之Composite(组合)