首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >UML属性是关联类还是简单类?

UML属性是关联类还是简单类?
EN

Stack Overflow用户
提问于 2022-08-30 02:20:48
回答 1查看 62关注 0票数 2

我很难弄清楚在哪里放置Level属性。我希望员工有各种技能,有不同的水平。为此,我建立了许多关系,这是作为一个EmployeeSkill关联类实现的。

上述类的一个例子如下:一个名为Jack的雇员可能具有一种水平初学者的Java技能,而他也可能拥有一种高级级别的C#技能。是将级别保存在EmployeeSkill关联类中还是保存在技能类中?我想它应该在社团课上。

EN

回答 1

Stack Overflow用户

发布于 2022-08-30 08:44:11

关联类的属性?

您对Employee实例"Jack"Skill实例"Java"level of "beginner"相关联的叙述表明,该技能与级别无关,并且该级别与给定员工和给定技能的组合有关。

为了准确地模拟这种叙述的语义,level确实应该是关联类EmployeeSkill的属性。

会不会是这种技能的一种特性?

level移动为Skill的属性并不是错误的。但是模型的语义不同,因为每个与Employee关联的Skill都共享相同的级别。这意味着"Jack""Java"这样的技能相关联,而与Elementary Java这样的技能相关联。

这种替代模式还减少了拼命搜索所有知道Neural network的员工的方便性,而不管级别如何。而且,对于系统来说,不太明显的是,elementary neural networkadvanced neural network expertise相关,而Advanced javaAdvanced javascript没有什么关系。

为了具有同样的表达能力,相关但对应于不同层次的技能将需要明确的关联,这将使模型的使用更加繁琐和脆弱。

与你的问题无关的评论

  • 您似乎在JobCategoryCountry的属性中重复了Employee的属性。这是令人困惑的,因为关联已经将类与这些属性的另一组关联起来。您是指用于实现关联和显示db表布局的冗余属性,而不是类吗?如果是这样,应该使用一些定制定型来消除歧义。但是,我建议删除冗余项,并在图表底部发表评论,解释您实现关联的原因。
  • 我不知道SkillSkillCategory之间的关联的多重性是否是颠倒的(也就是说,一个类别可以有多个技能,而每个技能只与一个类别相关联)?或者你指的是多到多的关联,如果技能属于几个类别的话。
  • 在关联类中,使用前缀FK突出显示外键。使用<<FK>>使其成为自定义原型(参见可能首先提到使用原型)。
  • 正如所以在注释中所指出的,您使用嵌套连接器来关联枚举。这在语法上是可以接受的,但并不是你所想的。这是为了处理名称空间。只要去掉那个圆圈加符号,让它成为一个正常的联想,它就会像你想的那样。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73540827

复制
相关文章
Chrome 中 JavaScript 加载优先级
浏览器如何调度和执行脚本影响着 web 页面的的性能。 <scriptdefer>、 <linkrel=preload> 等技术影响着脚本的加载,知道浏览器如何解释它们,对优化 web 性能很有帮助。感谢 Kouhei Ueno,我们已经更新了 Chrome 脚本调度的概要。
三毛
2023/06/09
3610
Chrome 中 JavaScript 加载优先级
EasyNVR纯H5摄像机直播解决方案前端解析之:RTSP安防监控实时直播的四分屏的前端展示方案
我们经常会有一些物联网、作战指挥、工业监控方面的大型项目,需要上大屏展示直播,尤其是多屏展示的功能,传统安防里面,我们一般都是采用的海康、大华、宇视的解码器上大屏的;而现在,越来越多的项目,是基于网页、H5、B/S、Chrome的架构,轻量、友好、无插件、去IE化,那么这个时候,我们往往思维上还是需要像传统安防上大屏一样,做到多屏播放展示,那么在H5里面怎么做到呢,这就是我们今天将要讲解的这个例子:
EasyNVR
2020/04/23
2.5K0
EasyNVR纯H5摄像机直播解决方案前端解析之:RTSP安防监控实时直播的四分屏的前端展示方案
破解在idea中无法加载spring cloud config中多环境配置之谜
1、config 默认Git加载 通过spring.cloud.config.server.git.uri指定配置信息存储的git地址,比如:https://github.com/xxx/config-repo
算法之名
2019/08/20
2.3K0
破解在idea中无法加载spring cloud config中多环境配置之谜
PHP中Redis扩展无法加载问题
phpredis编译出来的redis.so也需要拷贝到"/usr/lib64/php/modules/"中;
叫我可儿呀
2019/11/16
2K0
Idea 中图片资源无法加载问题
今天在看一个 Java 的小游戏时,遇到项目图片资源无法加载的问题,运行显示界面如图
攻城狮杰森
2022/06/03
2.9K0
Idea 中图片资源无法加载问题
在 Chrome DevTools 中调试 JavaScript
由浅入深说一说怎么样在 Chrome DevTools 中调试 JavaScript。
从入门到进错门
2020/03/17
5.1K0
springboot测试中主程序中能加载bean测试中无法加载bean
如遇到springboot版本的问题导致bean类无法注入到项目中,可能是注解和springboot版本不匹配导致启动类启动时扫描不到相应的bean类
一个风轻云淡
2022/11/13
1.8K0
springboot测试中主程序中能加载bean测试中无法加载bean
kali安装chrome后,无法启动chrome
5.安装成功后,点击chrome图标,发现并不能启动浏览器。这是由于chrome默认是普通用户运行的,root不能够运行chrome。所以我们要使得root可以运行chrome。
青木
2019/04/18
5.8K0
kali安装chrome后,无法启动chrome
EasyNVR纯H5摄像机直播解决方案前端解析之:RTSP安防监控实时直播的网页H5自动播放方案
我们很多安防、互联网、直播的应用场景中,在打开一路直播流后,极少看到需要点击播放按钮才能直播 播放视频流的情况,但是由于H5场景的播放需要兼容的浏览器非常多,这样的情况下经常会遇到各种各样的摄像机网页播放的问题,比如这里解析的视频流自动播放的问题:
EasyNVR
2020/04/23
5K0
EasyNVR纯H5摄像机直播解决方案前端解析之:RTSP安防监控实时直播的网页H5自动播放方案
在Chrome中截取整个网页
经常使用谷歌浏览器的话,如果要想对网页截图,大多都直接使用系统自带截屏方式或者第三方截屏。但如果要把网页整个截取下来的话,你可以试试Chrome自带的截屏功能。步骤如下:
Inkedus
2020/04/16
1.6K0
在Chrome中截取整个网页
无法在R里面加载相应版本的python
reticulate可以实现R与python的相互切换,即在R里面调用python的脚本、模块等。
生信编程日常
2020/11/24
2.4K0
在Chrome中与Flash说再见
20 年来,Flash 帮助塑造了您在网络上玩游戏,观看视频和运行应用程序的方式。但在过去几年中,Flash 变得不那么常见了。三年前,80%的桌面 Chrome 用户每天都会访问一个使用 Flash 的网站。今天使用率仅为 17%并且继续下降。
宗亲立牧
2019/09/07
1K0
在Chrome中与Flash说再见
百度云网页视频加速播放
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/141915.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/01
3.2K0
百度云网页视频加速播放
在Edge中安装Chrome扩展程序
Edge可以安装绝大多数Chrome商店中的扩展, 但Chrome中的谷歌开发App程序, 类似Secure Shell App, 目前是无法安装的, 新版Edge使用了Chrome的Chromium内核, 可以兼容安装Chrome生态中的各种应用程序,为Edge未来的发展带来了无限可能~
zhaoolee
2019/05/31
3.1K0
集RTMP, HLS, FLV, WebSocket 于一身的网页直播/点播播放器EasyPlayer.js引用videojs无法自动播放问题解决
EasyPlayer几乎涵盖了开发者所需的全部平台,尤其是在web端的EasyPlayer.js时遇到的播放器接入的问题,比如:不懂前端的js代码、没有公网服务器放置这些js脚本和网页、微信对接入IP播放地址有限制等。EasyPlayer.js,极大地方便了开发者在解决B/S型业务开发,集 rtmp,hls,flv,websocket 于一身的网页直播/点播播放器。
EasyNVR
2020/04/23
6.9K0
集RTMP, HLS, FLV, WebSocket 于一身的网页直播/点播播放器EasyPlayer.js引用videojs无法自动播放问题解决
关于chrome 无法在application界面修改cookie的解决方法
1.在chrom浏览器输入 chrome://flags/ 2.修改如下图
小小咸鱼YwY
2022/05/09
9410
关于chrome 无法在application界面修改cookie的解决方法
videojs播放器插件使用详解
HLS是苹果公司实现的基于 HTTP 的流媒体传输协议,全称 HTTP Live Streaming,可支持流媒体的直播和点播,主要应用在 iOS 系统,为 iOS 设备(如 iPhone、iPad)提供音视频直播和点播方案。
菲宇
2020/04/16
53.3K2
videojs实际应用
一个页面一个video,点击切换显示不同的画面 <div v-html="videoHtml"> </div> initVideo(){ this.videoHtml = '<video ref="videotest" id="video" width="865" height="460" preload="auto" class="video-js" controls></video>' this.$nextTick(()=>{ let option
tianyawhl
2022/08/07
1.9K0
Gravatar 头像无法加载
由于众所周知的原因,头像服务器多数都无法正常访问,不管是http还是https。为了解决头像问题有两个办法:
obaby
2023/02/22
1.5K0
videojs插件使用「建议收藏」
使用整理:使用主要针对于移动端视频播放,考虑的点:视频显示适配手机宽度;适配定义样式;在微信端,安卓、ios视频空间控件不同,定制等会自动被微信视频控件覆盖;播放过程中定制暂停/播放按钮事件等;播放结束后定制重播、下一个视频事件,读秒播放下一个视频
全栈程序员站长
2022/11/01
10.4K0

相似问题

如何像RecyclerView一样使用GridView?

39

如何像Facebook一样在ASP.NET中加载GridView/Repeater数据来滚动页面/分页?

32

像gridView一样的UITableView

30

像PageView一样滚动GridView

133

Repeater控件中的嵌套Gridview

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文