将对象组合成树状层出结构,使用户能一致地使用叶子节点和分支节点
package com.jerry.design.composite; import java.util.ArrayList; import java.util.List; // 测试类 public class Test { public static void main(String[] args) { Component root = new Composite(); Component c1 = new Composite(); Component c2 = new Composite(); Component l1 = new Leaf(); Component l2 = new Leaf(); Component l3 = new Leaf(); root.addChild(c1); root.addChild(c2); root.addChild(l1); c1.addChild(l2); c1.addChild(l3); System.out.println(root.getChild(0)); System.out.println(root.getChild(1)); System.out.println(root.getChild(2)); } } interface Component{ public void doSomething(); public void addChild(Component c); public void removeChild(Component c); public Component getChild(int index); } class Composite implements Component{ private List<Component> children = null; @Override public void doSomething() { if(children!=null){ for(Component c:children){ c.doSomething(); } } } @Override public void addChild(Component c) { if(children==null){ children = new ArrayList<Component>(); } children.add(c); } @Override public void removeChild(Component c) { if(children!=null){ children.remove(c); } } @Override public Component getChild(int index) { if(children!=null){ return children.get(index); } return null; } } class Leaf extends Composite{ public void doSomething() { System.out.println("Leaf is doSomething()"); } }
您还没有登录,请您登录后再发表评论
组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的...
组合模式(Composite),将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 组合模式的适用场合是,一般当你发现需求中是体现部分与整体层次的结构时,...
本资源包含由Java设计模式中的“组合模式”实现的“五子棋”所有源代码,需要的朋友可以下载哦!
使用组合模式有如下的好处: l 定义了饱含基本对象和组合对象的类层次结构,基本对象可以被组合成更复杂的组合对象,而这个组合对象有可以被组合。 简化客户代码 客户可以一直地使用组合结构和单个对象,通常用户不...
java设计模式【之】组合模式【源码】【场景:遍历目录树】 * 组合模式 * 将对象组合成树结构,表示 “部分与整体” 的关系 * 要求 部分与整体,具备相同的父类 * * 代码实现 * 输出当前目录下,全部目录层级...
本资源包含一个由Java设计模式中的“组合模式”实现的“空军指挥系统”的全部源代码。注意:本资源含有的代码量比较大,对于急需“项目实战”的朋友很有帮助!需要的朋友可以下载哦!!!!!!!!!!
c++设计模式-结构型模式-组合模式;qt工程;c++简单源码; 组合(Composite Pattern)模式的定义:有时又叫作整体-部分(Part-Whole)模式,它是一种将对象组合成树状的层次结构的模式,用来表示“整体-部分”的关系...
设计模式C++学习之组合模式(Composite)
java组合模式例子
设计模式--组合模式java例子
组合模式的例子代码,你值得拥有,好好学习,天天向上咯。
实验八:组合模式.rar实验八:组合模式.rar
组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。掌握组合模式的重点是要理解清楚 “部分/整体” 还有 ”单个对象“ 与 "组合对象" 的含义。...
本例主要包含组合模式的C#实现,以及一个应用案例,加深该模式理解与运用。
最简单的组合模式实现,最能体现模式本身的特性,最少对需求理解的依赖
ios平台中通过最简单的代码讲解组合模式,可在博客http://blog.sina.com.cn/s/blog_161d504630102wxis.html中查看简单解释
C#设计模式——组合模式应用实例。主要对一款针不同杀毒软件框架的学习。
设计模式-组合模式(讲解及其实现代码)
Java 23种设计模式12组合模式.pdf
Android组合模式简单Demo,同步博文:http://blog.csdn.net/qq_28690547/article/details/50744047
相关推荐
组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的...
组合模式(Composite),将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 组合模式的适用场合是,一般当你发现需求中是体现部分与整体层次的结构时,...
本资源包含由Java设计模式中的“组合模式”实现的“五子棋”所有源代码,需要的朋友可以下载哦!
使用组合模式有如下的好处: l 定义了饱含基本对象和组合对象的类层次结构,基本对象可以被组合成更复杂的组合对象,而这个组合对象有可以被组合。 简化客户代码 客户可以一直地使用组合结构和单个对象,通常用户不...
java设计模式【之】组合模式【源码】【场景:遍历目录树】 * 组合模式 * 将对象组合成树结构,表示 “部分与整体” 的关系 * 要求 部分与整体,具备相同的父类 * * 代码实现 * 输出当前目录下,全部目录层级...
本资源包含一个由Java设计模式中的“组合模式”实现的“空军指挥系统”的全部源代码。注意:本资源含有的代码量比较大,对于急需“项目实战”的朋友很有帮助!需要的朋友可以下载哦!!!!!!!!!!
c++设计模式-结构型模式-组合模式;qt工程;c++简单源码; 组合(Composite Pattern)模式的定义:有时又叫作整体-部分(Part-Whole)模式,它是一种将对象组合成树状的层次结构的模式,用来表示“整体-部分”的关系...
设计模式C++学习之组合模式(Composite)
java组合模式例子
设计模式--组合模式java例子
组合模式的例子代码,你值得拥有,好好学习,天天向上咯。
实验八:组合模式.rar实验八:组合模式.rar
组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。掌握组合模式的重点是要理解清楚 “部分/整体” 还有 ”单个对象“ 与 "组合对象" 的含义。...
本例主要包含组合模式的C#实现,以及一个应用案例,加深该模式理解与运用。
最简单的组合模式实现,最能体现模式本身的特性,最少对需求理解的依赖
ios平台中通过最简单的代码讲解组合模式,可在博客http://blog.sina.com.cn/s/blog_161d504630102wxis.html中查看简单解释
C#设计模式——组合模式应用实例。主要对一款针不同杀毒软件框架的学习。
设计模式-组合模式(讲解及其实现代码)
Java 23种设计模式12组合模式.pdf
Android组合模式简单Demo,同步博文:http://blog.csdn.net/qq_28690547/article/details/50744047