思想
可以理解为树,类中维护节点集合;
 描述
又叫部分-整体模式,一个节点类,内有子节点对象(类型也是节点类类型,可能是个列表)
 适用
处理类似树型结构的问题时比较方便
 示例
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 
 | 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 Test {
 public static void printMsg(String msg){
 System.out.println(msg);
 }
 TreeNode root = null;
 public Test(String name){
 root = new TreeNode(name);
 }
 public static void main(String[] args){
 Test tree = new Test("A");
 TreeNode node_b = new TreeNode("B");
 TreeNode node_c = new TreeNode("C");
 node_b.add(node_c);
 tree.root.add(node_b);
 Test.printMsg("build tree");
 
 }
 }
 
 |