命令模式
一、题目:
某软件公司欲开发一个基于windows平台的公告板系统,该系统提供一个主菜单(Menu),在主菜单中包含了一些菜单项(MenuItem),可以通过Menu类的addMenuItem()方法添加菜单项,菜单上的主要方法是click(),每一个菜单项包含一个抽象命令类,具体命令类包含OpenCommand(打开命令)、CreateCommand(创建命令)和EditeCommand(编辑命令)等,命令类内置有一个excute()方法,用于调用公告板系统界面类(BoardScrean)的open()、create()、edite()等方法,现使用命令模式设计系统。
(1)绘制命令模式结构视图
(2)给出实例类图并实现代码。
二、所用模式结构视图:
三、实例类图:
四、实例实现代码:
(因为区分,所以在类的前面加了Gj19)
菜单栏
package gjCommandPattern;
import java.util.ArrayList;
/**
* 菜单栏
* @author gong
*
*/
public class Gj19Menu {
private ArrayList<Gj19MenuItem> gj19MenuItemsList = new ArrayList<Gj19MenuItem>();
//添加菜单项
public void