Welcome

首页 / 软件开发 / 数据结构与算法 / hand first设计模式 -组合模式-1

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();  } }