“21天好习惯”第一期-19

  1. 一个公司可以雇佣多个人,某个人在同一时刻只能为一家公司服务。每个公司只有一个总经理,总经理下有多个部门经理管理公司的雇员,公司的雇员只归一个经理管理。请为上面描述的关系建立类模型,注意捕捉类之间的关联并标明类之间的多重性。

  2. 画出该图的对象图。

 

我的答案:

1.题中没有说明各个类有哪些属性,可以根据自己的了解适当添加

1)综合运用识别对象和类的方法,按照需求陈述中出现的次序排列,得到的候选类有公司、总经理、部门经理、雇员。

(1)一个公司可以雇佣多个人,某个人在同一时刻只能为一家公司服务。“公司”类和“雇员”类是一对多的关联关系。进一步分析,可以认为公司和雇员是整体与部分的关系,公司不存在了,雇员也不能单独存在。因此,“公司”类和“雇员”类是组成关系,“公司”类是整体,“雇员”类是部分。

(2)每个公司只有一个总经理。“公司”类和“总经理”类是一对一的关联关系。进一步分析,可以认为公司和总经理是整体与部分的关系,公司不存在了,总经理也不能单独存在。因此,“公司”类和“总经理”类是组成关系,“公司”类是整体,“总经理”类是部分。

(3)总经理下有多个部门经理管理公司的雇员,公司的雇员只归一个经理管理。“总经理”类和“部门经理”类是一对多的关联关系,“部门经理”类和“雇员”类是一对多的关联关系。

 

2.

 如有错误,敬请指正。

为了创建这个类图,我们将需要以下几个主要类: 1. **公司(Company)**: 类似于根节点,表示公司的实体。它有一个属性`generalManager`,表示总经理,是一个关联,通常使用"1"表示一对一的关系。 2. **总经理(GeneralManager)**: 是公司的特定角色,可能包含姓名、职位等属性。它是公司的成员,用双向箭头表示,表示从公司到总经理和从总经理到公司的关系。 3. **部门经理(DepartmentManager)**: 可能有个,每个部门经理管理一定数量的部门,这表明是一个"n"到"1"的关系,即每个部门经理关联到一个公司,而公司一个部门经理。 4. **部门(Department)**: 部门是公司的组成单元,可能有个部门经理管理它们,也是一对一关系。 5. **员工(Employee)**: 属于某个部门,由一个部门经理管理,是一个"n"到"1"的关系,因为一个员工只有一个直接上级经理。 6. **雇佣关系(Employment)**: 这是一种联系类,用于表示员工和公司之间的雇佣关系,可能是"n"到"1"的,因为一个员工可以在公司工作,但每个公司只有一份雇佣记录。 现在我会简单地画出这个类图的大致框架: ``` +------------------------+ | 公司 (Company) | | - generalManager (GM) | +---+ ^ | | v +----------------------+ +----------+ | 部门经理 (DM) | | 部门 | | - employees (Employees)|----> n | - manager | +----------------------+ +---> n ----+ | | | 职员 (Employee)| +-----Employment----> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Redmonster0923

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

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

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

打赏作者

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

抵扣说明:

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

余额充值