首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用uml的面向对象场景

使用uml的面向对象场景
EN

Stack Overflow用户
提问于 2010-11-12 14:18:54
回答 2查看 283关注 0票数 0

我有一个关于铁路系统的设想。在这个系统中

Rails

  • 正常情况: rails没有任何外部支持。
  • 电气化:用电支撑的铁轨。

火车

  • 高速列车:这种在电气化铁轨上运行的列车.
  • 过道列车:过道列车可以移动电气化或普通铁轨。
  • 加速旅客列车:这种在电气化铁轨上运行的列车。它是由客运列车演变而来的。
  • 货车列车:一列货车可以移动两条铁轨,但它的重量使它对电气化铁轨有害。所以这是没有预谋的。

我想用uml展示火车和铁轨之间的关系。显然火车没有铁轨。他们只是利用它们。但我找不到真正的方法在类图中显示这种关系。我应该用另一张图表还是什么?提前谢谢..。

EN

回答 2

Stack Overflow用户

发布于 2010-11-12 14:28:52

我认为您应该将其建模为一个依赖性。这通常是一种供应商/客户关系。在您的例子中,rails将是供应商,而火车将是客户(就像火车中使用rails提供的基础设施一样)。这将是一支从“火车”到“铁轨”的虚线箭头。我就是这么做的。

票数 1
EN

Stack Overflow用户

发布于 2010-11-14 10:29:23

谢谢你的回答,拉兹。我就是这样做的:

我创建了一个名为"Rail“的抽象类。然后推导出2个子类“正常”和“带电”。创建抽象类"Train",派生子类"HighSpeedTrain“、"PassengerTrain”、"GoodsTrain“。此外,"AcceleratedPassengerTrain“源于"PassengerTrain”。

然后我就像你说的那样使用依赖。

  • 高速列车->电气化
  • 乘客列车->正常的、通电的
  • 固体车->正常的,通电的
  • 加速列车

但我不确定这是不是真的。另一个问题是,"AcceleratedPassengerTrain“应该只使用电气化铁路。在我的解决方案中,我认为它也支持普通铁路,因为它继承了"PassengerTrain“。请告诉我你对这个设计有什么看法。谢谢你的帮助。

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

https://stackoverflow.com/questions/4165524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档