【UML】-- 类图练习题含答案

本文探讨了如何绘制各类图,涉及学生-教师关系、公司组织结构、飞船系统和考试管理系统的设计。涵盖了研究生助教、部门关系、产品生产和员工角色等场景。

一、练习一

学生包括本科生、研究生两种;
研究生的一部分利用课余时间担任助教;
教师包括助教、讲师和教授三种;
一名助教可以为一位讲师或一位教授助课,一位讲师只能有一名助教,一位教授最多可以有5名助教。

 二、练习二

请按下述要求画出类图。
1)一家公司包含许多部门,通过部门名称唯一的确定一个部门,每个部门由一名经理主管,也有的经理不管理任何部门;
2)每个部门生产多种产品,每种产品仅由一个部门生产;
3)该公司有许多员工为之工作,员工又分为经理与工人两类;
4)每位工人可以参与多个项目,每个项目需要多位工人参与;

        (5)每位经理可以主持多个项目,每个项目仅由一位经理主持

三、练习三

按如下描述绘制出“飞船系统”的类图。
1.神舟六号飞船是神舟飞船系列的一种,它由轨道舱、返回舱和逃逸救生塔组成。
2.航天员可以在返回舱内驾驶飞船,轨道舱则是航天员工作和休息的场所。在紧急情况下,可以利用逃逸救生塔逃生。
3.在飞船两侧有多个太阳能电池翼,可以为飞船提供电能。

 四、练习四

某学校打算做一个考试管理系统,当前情况如下:
1.讲师会讲很多门课,大部分课程需要安排一次考试,有些不需要;
2.考试试卷由讲师出;
3.学生需要参加很多考试,每门考试都有成绩。

 

以前答案仅供参考,有问题可以指出,感谢观看。

中,你可以使用泛化(Generalization)关系来表示继承层次结构,以及关联(Association)来表示对象之间的连接。对于描述这个高校学生体系,我们可以这样做: 1. 首先,创建一个名为"Person"的通用(Abstract Class),表示所有学生的共性,如姓名、学号等基本属性。 ```plaintext +--+ | -name | | -id | +---------+ ``` 2. 然后,为专科生、本科生和研究生创建具体的子(Concrete Classes),它们都从"Person"继承而来: - "Undergraduate": ```plaintext +--+ | -degree | +-----------------------+ ``` - "GraduateStudent": ```plaintext +-----------------------------+ | GraduateStudent (Person) | +-----------------------------+ | -degree | | -research_area | +-----------------------------+ ``` - "VocationalStudent"(假设专科没有特殊需求,与本科生似): ```plaintext +------------------------+ | VocationalStudent | +------------------------+ | -degree | +------------------------+ ``` 3. 如果需要,可以添加关联,比如每个学生都有一个导师(Teacher),这时可以在"Person"或其他适当的地方加入关联: ```plaintext +--------------------------+ | Teacher | +--------------------------+ | -name | | -teaches | <- 关联到一组学生 +--------------------------+ +---------------------------+ | Student (Person) | +---------------------------+ | -teacher | <- 关联到一个老师 +---------------------------+ ```
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

四月天行健

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值