Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >关于铁路系统建模的问题

关于铁路系统建模的问题
EN

Stack Overflow用户
提问于 2020-02-10 08:04:44
回答 1查看 97关注 0票数 0

我目前正在做一项任务,在那里我必须在java (大学项目)构建一个铁路模拟项目。

有三种类型的机车车辆:货车,机车和多个单位。 所有类型的机车车辆都有名称和长度。 此外,还有三种类型的货车和机车。

这里是我创建的一个简单的UML图。

现在,我仍然需要实现这个“特性”:

多个单元ID是按照与机车相同的规则组成的。因此,机车和多个单元共享相同的ID空间。多个单元有一种特殊类型的耦合,因此只能由同一系列多个单元组成。

对于机车和多个单元来说,使用相同的ID空间的最佳方法是什么?

这是一个很好的模型,还是应该使用接口呢?我很感谢你的反馈和建议。提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-10 08:22:35

对于机车和多个单元来说,使用相同的ID空间的最佳方法是什么?

不重要,只要它是独一无二的。只需使用序列号,或者,如果您想要一个不与单个计数器绑定的序列号,则使用完全随机的序列号( 128位或以上)。为什么不在你使用标准的时候使用它。

你应该问自己的一个问题是:这个ID会被用于货车吗?如果是这样的话,一个短的静态序列号(或字符串)肯定更有意义。可能会有一些注册机构,所以在这种情况下,您的中央柜台就在那里。永远不要忘记检查你的模型是否符合现实世界!

在ID前面加上传输类型是有意义的,尽管在这种情况下,我认为它已经不再使用相同的空间了。

这是一个很好的模型,还是应该使用接口呢?我很感谢你的反馈和建议。

编辑:错了,我以为所有的铁路车辆都会有身份证!

不,这很好,你毕竟要对ID进行操作。您可能会添加其他类似于所有子类的功能到铁路车辆上。请注意,许多环境都有提取接口并替换对该接口的现有引用的方法。重构不是你想要做的事情,但当你需要它的时候,它就在你的身边。

编辑:

如果你只有机车和机车车辆的身份证,那么有两种选择。最好是插入一个定义IdentifyableRollingStock中间类的中间抽象类。还有其他选项,比如创建一个可选的ID,或者使用装饰模式。如果货车不能被识别的话,那就有点奇怪了。在NL中,我很确定所有的铁路车辆都是可以识别的。

我只想知道是否所有的铁路车辆都有名字。我看到一些货车只是有个号码。这是另一个真实世界的检查。

加班

多个单元具有特殊的耦合类型,因此只能由同一系列的多个单元组成。

写这封信的人应该被射入轨道。做个好人,让它成为国际空间站。一遍又一遍.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60154115

复制
相关文章
iOS在线音频流播放
前言 这是一篇关于在线音频播放的文章,参考自苹果OS X的demo。 在移植到iOS后,可以通过iphone播放Mac上面的音频,实现在线播放音频的功能。 本文可以学习到socket编程、AudioFileStream转换音频流、AudioQueue播放音频、信号量的使用。 正文 demo有两个工程,分别是servers和client。 servers是OS X的应用,作为服务端,负责发送音频流数据; client是iOS的应用,作为客户端,负责接收音频流数据; 音频数据通过AudioFil
落影
2018/04/27
2.7K0
iOS在线音频流播放
NoteBurner iTunes DRM Audio Converter for Mac(苹果DRM音频转换器)
NoteBurner iTunes DRM Audio Converter mac版可以一键将DRM保护的音乐文件转换为常见的MP3或者是AAC格式的音频文件,可以在后台以20倍速度记录有声读物。
Mac知识分享
2022/09/02
1K0
Sidify Apple Music Converter mac(Apple音乐转换器)
Sidify Apple Music Converter是一款全功能,功能强大的专业Apple音乐转换器,不仅可以转换Apple音乐文件,还可以转换所有可在iTunes中播放的音乐,包括iTunes M4A / M4B,Audible AA / AAX有声读物和iTunes M4P音乐,转换时可以选择最大20倍的转换速度。
Mac小小
2022/08/26
1.3K0
iOS AVDemo(3):音频封装,采集编码并封装为 M4A丨音视频工程示例
iOS/Android 客户端开发同学如果想要开始学习音视频开发,最丝滑的方式是对音视频基础概念知识有一定了解后,再借助本地平台的音视频能力上手去实践音视频的采集 → 编码 → 封装 → 解封装 → 解码 → 渲染过程,并借助音视频工具来分析和理解对应的音视频数据。
关键帧
2022/06/13
5820
iOS AVDemo(3):音频封装,采集编码并封装为 M4A丨音视频工程示例
iOS/Android 音视频开发专题
记得从 2016 年起我开始从事音视频 SDK 开发,当时音频技术处于零基础阶段。现在 Android 和 iOS SDK 已迭代至 v3.x 版本。在期间得到很多乐于分享的开发者帮助,如果没有他们分享的精神,我无法完成这么复杂的工作。现在,我也愿意把自己在音视频领域积累的开发经验分享出来,让相关开发者能够得到一点启发和帮助。
100001509164
2022/01/20
8540
使用播放器播放视频有黑边
1.推流端推的画面本身有黑边。因为SDK推流只支持16:9(或者9:16)的画面,如果推流端采集的画面不是16:9的,SDK编码时也会编码成16:9的比例,多出来的部分以黑色填充,具体表现就是编码出来的画面有黑边。这样的情况拉流端SDK一般是处理不了的
腾讯云-qichengdeng
2019/09/05
2.9K0
iOS音频播放(一)
转载: http://msching.github.io/blog/2014/07/07/audio-in-ios/
音视频_李超
2020/04/02
1.8K0
AudFree Audio Converter 2.9.0 Mac音频格式文件转换器
AudFree Audio Converter是一款功能强大的音频转换软件,该软件的最大特点是支持多种加密音频格式的转换,如DRM M4P、M4B、AA、AAX等,可以帮助用户轻松转换iTunes购买的音频、亚马逊音乐等流媒体平台下载的音频。
用户1517359
2023/05/20
5890
AudFree Audio Converter 2.9.0 Mac音频格式文件转换器
AudioToolbox_如何录制PCM格式的数据
先来认识一下头文件 AudioConverter.h: 音频转换接口。定义用于创建和使用音频转换器的接口 AudioFile.h: 定义一个用于读取和写入文件中的音频数据的接口。 AudioFileStream.h: 定义了一个用于解析音频文件流的接口。 AudioFormat.h: 定义用于分配和读取音频文件中的音频格式元数据的接口。 AudioQueue.h: 定义播放和录制音频的接口。 AudioServices.h: 定义三个接口。系统健全的服务让你播放简短的声音和警报。音频硬件服务提供了一个轻量级的接口,用于与音频硬件交互。音频会议服务,让iPhone和iPod触摸应用管理音频会议。 AudioToolbox.h: 顶层包括音频工具箱框架的文件。 AuGraph.h:定义用于创建和使用音频处理图形界面。 ExtendedAudioFile.h: 定义用于将音频数据从文件直接转化为线性PCM接口,反之亦然。
酷走天涯
2018/09/14
1.5K0
AudioToolbox_如何录制PCM格式的数据
iOS AVDemo(4):音频解封装,从 MP4 中解封装出 AAC丨音视频工程示例
iOS/Android 客户端开发同学如果想要开始学习音视频开发,最丝滑的方式是对音视频基础概念知识有一定了解后,再借助本地平台的音视频能力上手去实践音视频的采集 → 编码 → 封装 → 解封装 → 解码 → 渲染过程,并借助音视频工具来分析和理解对应的音视频数据。
关键帧
2022/06/13
5170
iOS AVDemo(4):音频解封装,从 MP4 中解封装出 AAC丨音视频工程示例
使用AudioToolbox播放AAC
前言 使用VideoToolbox硬编码H.264 使用VideoToolbox硬解码H.264 使用AudioToolbox编码AAC 在上一篇中,介绍了如何从麦克风采集声音并用AudioToolbox编码成AAC码流,这次是使用AudioToolbox来播放之前录制的AAC码流。 介绍 在iOS设备上播放音频,可以使用AVAudioPlayer(AVFoundation框架内),但是不支持流式播放。 Apple recommends that you use this class for aud
落影
2018/04/27
1.5K0
使用AudioToolbox播放AAC
FFmpeg4.0+SDL2.0笔记07:Seeking
背景:在系统性学习FFmpeg时,发现官方推荐教程还是15年的,不少接口已经弃用,大版本也升了一级,所以在这里记录下FFmpeg4.0+SDL2.0的学习过程。
非一
2021/04/13
6540
FFmpeg推流到Nginx并使用播放器播放
如今直播很火,下面就简单分享下我是如何直播的。必备工具:FFmpeg,Nginx,还有一个播放器。之前在实例解析中分享过如何用FreeSWITCH来做直 播,这次分享下如何用FFmpeg配合Nginx做直播。
杜金房
2020/12/21
1.9K0
使用PWM实现语音播放
链接:https://community.arm.com/cn/b/blog/posts/nucleof429-2-pwm
MCU起航
2021/04/23
2.9K0
delphi 使用windowsmediaplayer播放视频
delphi7中原本自带的一个Tmediaplayer控件,但是发现有不少视频是无法播放的,于是就想到了用windowsmediaplayer来进行播放。
Vaccae
2019/07/25
3.1K0
delphi 使用windowsmediaplayer播放视频
超级播放器点播如何使用Fileid加密播放?
1.播放视频中会有一些视频不想被没获取到或者不想别人看到,这个时候就会用到加密,超级播放是通过视频文件的id来进行加密
腾讯云-qichengdeng
2019/09/12
1.6K0
使用Python,怎么播放视频?
使用Python,怎么播放视频? 昨天分享了用python播放音频,今天来分享一下播放视频。将这一主题补充完整。 import numpy as np import cv2 cap = cv2.VideoCapture('vtest.avi') while(cap.isOpened()): ret, frame = cap.read() gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) cv2.imshow('frame',gray
TalkPython
2020/12/29
1.7K0
点击加载更多

相似问题

AudioQueue内存播放示例

33

播放中的AudioQueue间隙

10

ios音频:使用audioqueue改变播放进度

18

在使用AudioQueue录制的同时使用MPMoviePlayerController播放视频

10

无法同时录制/播放AudioQueue和动画

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

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