1、菜单案例
菜单是一个非常常见的对象,我们使用的智能手机上就会有很多菜单,比如我们使用的safari浏览器,一级菜单就有文件、编辑,显示,历史纪录等等。而一级菜单下面,往往还有二级菜单、三级菜单等。比如文件菜单下面,就有新建,保存等菜单选项。而菜单一般用来做显示,点击的时候,才会执行这个菜单显示的命令。
这里,我们给出一个菜单的简单的类图对象,比较简单抽象,如下:
2、菜单案例分析
看上图,我们发现,这里有五个对象,分别是Menu,MenuItem,Command,OpenCommand,PasteCommond。
其中OpenCommand与PasteCommand是Command的泛化关系,我们在前面提到,泛化可以理解为继承,这里如果用JAVA类来表示,应该使用extends。Command是一个抽象类,里面有一个Execute这样的方法。
Menu依赖MenuItem这个类,他们是一个依赖关系,Menu可以添加MenuItem这样的类,而MenuItem又有一个常量是Command类型,通过前面的介绍,我们可以知道这个是一种关联关系。
3、图形编辑器
图形编辑器也是一个非常常见的应用,尤其在windows上,应该很多人都用过这个软件,