hand first设计模式 -组合模式-12012-01-05 javaeye pan_java组合模式:允许你将对象组成树形结构来表现"整体/部份"的层次结构.组合能让客户以一致的方式处理个别对象和对象组合.下面程序的目的是打印所有菜单和子菜单的信息.菜单和子菜单都继承自MenuComponent,所以在打印信息的时候以一致的方式处理(见组合模式定义).菜单组件抽象类Java代码
public abstract class MenuComponent { //添加菜单组件 public void add(MenuComponent menuComponent) { throw new UnsupportedOperationException(); } //删除菜单组件 public void remove(MenuComponent menuComponent) { throw new UnsupportedOperationException(); } //获取菜单组件 public MenuComponent getChild(int i) { throw new UnsupportedOperationException(); } // 菜单项名字 public String getName() { throw new UnsupportedOperationException(); } // 菜单项描述 public String getDescription() { throw new UnsupportedOperationException(); } // 菜单项价格 public double getPrice() { throw new UnsupportedOperationException(); } //是否为素食 public boolean isVegetarian() { throw new UnsupportedOperationException(); } //打印 public void print() { throw new UnsupportedOperationException(); } }