首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UML:信号分类器与类分类器

UML:信号分类器与类分类器
EN

Stack Overflow用户
提问于 2015-12-10 08:35:45
回答 2查看 241关注 0票数 8

如果我正确理解信号,这是两个或多个对象之间的异步消息。例如,在UML中,我们有一个信号分类器:

代码语言:javascript
复制
-----------------
|  << signal >> |
|  SomeEvent    |
-----------------
|id:Int         |
|text:String    |
-----------------
|getId()        |
|getText()      |
-----------------

然后我们可以用Java编写这个信号,如下所示:

代码语言:javascript
复制
class SomeEvent{
  private final int id;
  private final String text;
  //+constructor + getters
}

然而,在Java中我们有一个类,但是在中我们有一个信号分类器,但是没有一个类分类器(更新:我指的是在这个例子中的)。怎么解释?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-10 09:50:42

您对UML信号的讨论是正确的。

从规范:

10.3.3.1信号 信号是一种对象间通信的规范,在这种通信中,在接收端异步地触发了一个反应,而没有应答。接收对象处理第13.3条所指定的信号。通信所携带的数据表示为信号的属性。信号是独立于处理它的分类器定义的。

然而,在Java中我们有一个类,但是在UML中我们有一个信号分类器,但是没有一个类分类器。怎么解释?

  1. UML确实有一个来自规范的类分类器。(强调地雷):

11.4类 ..。类的目的是指定对象的分类,并指定描述这些对象的结构和行为的特性()。 11.4.4符号 使用分类符号显示一个类。由于Class是中使用最广泛的分类器,因此需要使用no关键字来指示元类是类。

  1. UML与编程语言无关. 在Java中,UML类和信号分类器被实现为类。 另一个例子: UML有一个接口分类器,但是C++没有接口。C++中的接口将是一个抽象(纯虚拟)类。
票数 4
EN

Stack Overflow用户

发布于 2015-12-10 09:43:54

事实上,UML比Java更丰富。在UML中,信号、类、组件和协作分类器概念将对应于Java类。

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

https://stackoverflow.com/questions/34197071

复制
相关文章

相似问题

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