设计模式之组合模式
来源:互联网 发布:深圳蓝凌软件 编辑:程序博客网 时间:2024/06/02 01:21
组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。
这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。
优点:1、高层模块调用简单。2、节点自由增加。
缺点:在使用组合模式时,其叶子和树枝的声明都是实现类,而不是接口,违反了依赖倒置原则。public class TreeNode { private String leafName; private List<TreeNode> treeNodeList; public String getLeafName() { return leafName; } public void setLeafName(String leafName) { this.leafName = leafName; } public List<TreeNode> getTreeNodeList() { return treeNodeList; } public void setTreeNodeList(List<TreeNode> treeNodeList) { this.treeNodeList = treeNodeList; } public TreeNode(String leafName) { this.leafName = leafName; this.treeNodeList = new ArrayList<TreeNode>(); } public void add(TreeNode treeNode){ treeNodeList.add(treeNode); } public void remove(TreeNode treeNode){ treeNodeList.remove(treeNode); } public void traverse(){ System.out.println(); }}实现测试类
public class Tree { TreeNode treeNode = null; public static void main(String[] args){ Tree tree = new Tree("parent"); TreeNode A = new TreeNode("A"); TreeNode B = new TreeNode("B"); A.add(B); tree.treeNode.add(A); } public Tree(String treeName){ treeNode = new TreeNode(treeName); }}参考内容
https://sourcemaking.com/design_patterns/composite/java/2
0 0
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式之--组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式之---组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式之-------------组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 设计模式 之 组合模式
- 设计模式之组合模式
- 设计模式之组合模式
- 类加载机制与反射
- valarray--slice函数
- Xcode增加头文件搜索路径的方法
- ICPCCamp2016day8 I Robots 【最短路】
- SOAPUI 接口自动化学习笔记节选 如何用Groovy 脚本读取CSV 文件
- 设计模式之组合模式
- POJ 1698 图论之网络流
- Git学习笔记(3)
- java锁的种类以及辨析
- 自定义自动换行的线性布局linearLayout
- Java基础之四:面向对象三大特征
- 我来晚了!!
- 如何安装matlab2014a
- 在Java stream层面上探究客户端请求服务器数据