1. 类图

要求绘制下面类图。

图1-1 汽车类图

定义类的最通用方法是,在浏览器窗口的Logic View中添加新类。下面是定义类的步骤:

1.1创建类名

步骤:右击浏览器窗口中的Logic View,打开快捷菜单,选择:NewàClass后,系统自动增加了一个项目:<<>>NewClass。我们在此处输入Body,如图1-2所示。

图1-2 创建Body类

1.2给类添加属性

汽车外壳(Body)有颜色(color)和品牌(brand)属性,下面,给Body添加color属性。

 步骤:  右击Body, 打开快捷菜单,选择:NewàAttribute后,系统自动在Body名称下增加一个项目:<<>>name。我们在此处输入color,如图1-3所示。

图1-3 添加属性color

用同样的方法,添加 brand属性。

1.3给类添加方法

Body有自动清洗功能(clean()),下面给Body添加clean方法。

步骤:右击Body, 打开快捷菜单,选择:NewàOperation后,系统自动在Body名称下增加一个项目:<<>>opname。我们在此处输入clean,如图1-4所示。

图1-4 添加方法clean

如果要添加多个方法,步骤同上面一样。

上面完成了Body类的创建。 同理,重复上面1-3步,创建类:Car、Engine、Wheel、Passenger(这4个类没有添加属性和方法),如图1-5所示。

图1-5 创建了5个类

1.4创建类图和打开类图

步骤:右击LogicalView, 打开快捷菜单,选择:Newà Class Diagram后,系统自动在LogicalView下增加一个项目:NewDiagram。我们在此处输入:汽车类图,如图1-6所示。

图1-6创建汽车类图

双击文本”汽车类图”,打开汽车类图模型,如图1-7所示

图1-7 汽车类图在模型窗口中打开

上图显示,LogicalView,下有2个类图,它们的名字分别是:Main、汽车类图。这2个类图都在右边的模型图窗口中打开了。2个类图中都没有类,都是空的。

1.5把类拖入类图中

步骤:在浏览器窗口中,点击Body,按下左键(不要松手),将Body拖入右边的汽车类图中。

重复上面的步骤,分别将类Car、Engine、Wheel、Passenger拖入汽车类图中,如图1-8所示。

图1-8 五个类拖入汽车类图中

1.6建立类间关系

(1)Passenger与Car之间是关联关系,在这个关联中,Passenger的角色是旅客,Car的角色是车载。一辆Car最多可以载8个Passenger,多个旅客乘一辆Car.

步骤:单击菜单ToolsàCreateàAssociation,然后,在汽车类图中的Passenger图标上按下左键(不要松手),拖动鼠标到Car图标上,松开左键。如图1-9所示。

图1-9 建立Passenger与Car之间是关联

(a)设置关联的角色

在关联的左端右击,打开快捷菜单,选择Role name, 输入角色:旅客。

在关联的右端右击,打开快捷菜单,选择Role name, 输入角色:载客。

(b)设置关联的多种性

在关联的左端右击,打开快捷菜单,选择Multiplicityàn。

在关联的右端右击,打开快捷菜单,选择Multiplicityà1。

完成角色和多种性设置后,如图1-10所示。

图1-10 给关联添加角色和多种性

(2)Car与Wheel、Engine之间是聚合关系

(a) 绘制Car与Wheel的关系

步骤:单击菜单ToolsàCreateàAggregation,然后,在汽车类图中的Car图标上按下左键(不要松手),拖动鼠标到Wheel图标上,松开左键。如图1-11所示。

图1-11 绘制Car与Wheel之间的聚合关系

点击工具箱中的”ABC”,如后,在聚合的右端附件点击一下,输入数据:4

同理, 重复上面步骤,绘制Car与Engine之间的聚合关系。如图1-12所示。

图1-12绘制Car与Wheel之间的多种性

同理,建立Car与Body之间的关系,最后,如图1-13所示。

图1-13 汽车类图

注意:模型图中要用到的多数工具都在工具箱中,但是,有少数工具只能通过ToolsàCreateà  获取。如,类图中要用到的关联、聚合在工具箱中没有显示。

1.7修改属性和方法的可见性

默认情况下,属性的可见性都是:private,方法的可见性都是:public。下面修改Body类的属性和方法的可见性。

(1)将属性color的可见性改为:public

步骤:在类图中,右击Body图标,打开快捷菜单,选择Open Specification,打开类的规范窗口,如图1-14所示。

图1-14 规范窗口

点击Attributes标签,出现属性列表,如图1-15所示。

图1-15 类的属性列表

双击列表框中的color,弹出对话框,如图1-16所示。

图1-16 属性可见性选择

在Export Control单选组中,点击public单选框。这样,就把属性color的可见性改为:public 了。

(2)将方法clean的可见性改为:protected

步骤

在类图中,右击Body图标,打开快捷菜单,选择Open Specification,打开类的规范窗口à点击Operations标签,出现方法列表,如图1-17所示。

图1-17 类的方法列表

双击列表框中的clean,弹出对话框,如图1-18所示。

图1-18 方法可见性选择

在Export Control单选组中,点击Protected单选框。这样,就把方法clean的可见性改为:Protected了。

Rational Rose建立类图相关推荐

  1. 如何用Rational rose创建类图

    UML中各种图形概要: 图名 对照 说明 用例图 use case diagram 用例图表明系统做什么,与谁交互.用例是系统提供的功能,参与者是系统与谁交互,参与者可以是人.系统或其他实体.一个系统 ...

  2. rational rose 绘制时序图

    rational rose 绘制时序图 动态图概念 : 从静态图中抽取瞬间值的变化描述系统随时间变化的行为, 动态图包括交互图活动图状态图, 这篇博客研究交互图 包括时序图和协作图; -- 时序图 : ...

  3. UML之教学管理系统——3、Rational Rose画顺序图

    一.实验内容 绘制顺序图,以"删除课程"(Delete Course)为例. 二.实验工具 Rational Rose 三.实验步骤 第一步,创建协作. Logic View中创建 ...

  4. Rational Rose画序列图

    引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖 一. 1. 序列图的定义 在UML的表示中,序列图将交互关系表示为一个二维图.其中,纵向是时间轴,时间沿竖 ...

  5. UML之教学管理系统——5、Rational Rose画状态机图(一)

    一.实验内容 画针对学生的课程Course的状态机图. 二.实验工具 Rational Rose 三.实验步骤 1.选择对象. 针对学生的课程Course的状态机图. 2.列出对象的状态. 课程的状态 ...

  6. Rational Rose 画时序图 且保存为图片文件

    首先安装好的 Rational Rose, 在use case view下,新建package,在包下新建sequense diagram. 如果已经画完了时序图.全选复制到 win自带的 画图软件p ...

  7. Rational Rose 画时序图、泳道业务流程图、用例图等。

    目前正在给某大企业做软件系统,业务需求较复杂,<需求规格说明书>添加一些图会更清晰,对制作系统原型以及后续的设计与开发也应该有所帮助.. 这个项目所有的流程相关的图均通过成熟的工具Rose ...

  8. Rational Rose 建立图书管理系统模型UML

    用例图: 类图: 顺序图: 协作图: 状态图: 组件图: 部署图: 活动图:

  9. UML之教学管理系统——6、Rational Rose画包图

    1.明确按照什么分包. 按照对象分包 2.包里包含哪些. 课程管理包和人事管理包. 课程管理包(CourseManagement包): Course实体类 Course Ctrl控制类 Course ...

  10. Rational Rose建立对象图

    对象图 要求建立如下对象图 2.1定义类 确定对象图中有哪些类,并在浏览器窗口中,建立每个类. 步骤: (1)在Logic View中添加类Person.Company.如图1-20所示. 图1-20 ...

最新文章

  1. JSONP的实现原理
  2. 手机python代码写好了怎么运行-想在手机上编写python代码?手机上玩转python的利器...
  3. C#--检索线程状态
  4. C/C++ 字符串(string)转换
  5. javafx2_JavaFX 2 GameTutorial第4部分
  6. 会话控制(session、cookie)
  7. AsyncTask 源码流程简析
  8. android 编译 c 程序,Android上通过gcc编译普通的C程序
  9. iframe自适应高度调整
  10. 《利用Python进行数据分析·第2版》第13章 Python建模库介绍
  11. chmod 更改文件的权限
  12. 一款小清新版的java代码生成器,springboot脚手架
  13. Jmeter安装教程
  14. 需求分析报告模板(免费)
  15. cass软件yy命令_CASS快捷命令大全
  16. 2022edu教育邮箱哪个好?申请注册教育邮箱很难吗?
  17. 人生八境——古诗词中读懂人生境界
  18. 1800套solidworks非标机械自动化3d设备图纸
  19. vsphere服务器虚拟化的优点,vmware虚拟化优势_vmware开启虚拟化
  20. 每日一例,练就编程高手

热门文章

  1. 基于RFID定位技术的文物仓库管理--新导智能
  2. Java观察者模式例子
  3. 基于HTML5实现五彩连珠小游戏
  4. 谷歌网页存储为pdf或图片
  5. HTML5如何把圆分成六等分,Photoshop怎么把一个圆64等分?
  6. 路由器自适应算法OSPF和RIP协议(通俗理解)
  7. Android实现App版本检测、下载与安装新版本apk
  8. PCB板载天线及PCB设计要点
  9. 毕业设计,管理系统,大学生毕业设计应该这么做
  10. 用单片机测量流体流速的_一种测量管道内流体流速的传感器的制作方法