组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。
这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。
import java.util.ArrayList;import java.util.List;public class CompositeDemo { public static void main(String[] args) { Container Container=new Container(); Container.add(new Button()).add(new CheckBox()); }}abstract class Component{ abstract Component add(Component component);}class Container extends Component{ private Listcomponents=new ArrayList() ; public Component add(Component component){ components.add(component); return this; }}class Button extends Component{ @Override Component add(Component component) { // TODO Auto-generated method stub return null; } }class CheckBox extends Component{ @Override Component add(Component component) { // TODO Auto-generated method stub return null; } }