组合模式(Composite)
来源:互联网 发布:小米6数据网络不稳定 编辑:程序博客网 时间:2024/05/17 07:26
组合模式有时又叫部分--整体模式在处理类似树形结构的问题时比较方便,看看关系图:
直接看代码:
import java.util.Enumeration;import java.util.Vector;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!"); }}使用场景:将多个对象组合在一起进行操作,常用于表示树形结构中,例如二叉树等。
参考资料:Java开发中的23种设计模式
- 组合模式(Composite)
- 组合模式(Composite)
- Composite(组合模式)
- 组合(Composite)模式
- 组合模式(Composite)
- composite(组合)模式
- Composite(组合)模式
- 组合模式(Composite)
- 组合(composite)模式
- 组合模式(Composite)
- 组合模式(Composite)
- 组合模式(Composite)
- 组合模式(Composite)
- 组合模式(Composite)
- Composite(组合模式)
- 组合模式(Composite)
- 组合模式(Composite)
- Composite(组合模式)
- 【电脑的待机以及休眠都有哪些学问呢】
- Linux扫盲篇:CentOS、Ubuntu、Gentoo(转自月光博客)
- C# WinForm捕获全局异常
- 纯CSS实现DIV垂直居中效果(所有浏览器有效)
- TEMP
- 组合模式(Composite)
- main函数形参 int argc,char *argv[ ]
- Sicily 1343 Jam的计数法 (SOJ 1343) 【递归】
- 包含块(containing block)学习
- unity3d Photon常见问题FAQ
- 知方可补不足~CSS中margin,padding,border
- Android SDK环境变量配置(windows和Linux)
- ORG指令详解
- 字典序序号与全排列的关系【全排列与序号换算方法】