Java设计模式之-组合模式

来源:互联网 发布:淘宝店怎么添加音乐 编辑:程序博客网 时间:2024/06/08 04:18

Java设计模式之-组合模式

组合模式有时又叫部分-整体模式在处理类似树形结构的问题时比较方便,看看关系图:

这里写图片描述

下面请看示例代码:

import java.util.Enumeration;import java.util.Vector;public class CombinationTest {    private TreeNode root=null;    public CombinationTest (String name){        root=new TreeNode(name);    }    public static void main(String[] args) {        // TODO Auto-generated method stub        CombinationTest tree=new CombinationTest("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!");    }}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();    }}

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

0 0
原创粉丝点击