设计模式11-组合模式

来源:互联网 发布:有出售二手房软件 编辑:程序博客网 时间:2024/06/01 17:55

简介

组合模式有时又叫部分-整体模式在处理类似树形结构的问题时比较方便
这里写图片描述

实例

分支类

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!");      }  }  

备注

使用场景:将多个对象组合在一起进行操作,常用于表示树形结构中,例如二叉树,数等。

其他设计模式http://blog.csdn.net/qq_23370223/article/category/7193147