【问题标题】:Symbols in UML, C++, JavaUML、C++、Java 中的符号
【发布时间】:2012-09-06 07:17:58
【问题描述】:

在 Java 中,我们有一些修饰符:protectedpublicprivate。在 UML 中,它们分别是#+-

我的问题是,~ 符号在 UML 中是什么意思?而且在Java、C++中有什么意义吗?

【问题讨论】:

    标签: java c++ uml public protected


    【解决方案1】:

    表示package visibility,相当于Java中的默认访问。 C++ 中没有类似物。

    【讨论】:

      【解决方案2】:

      可见性类型的 UML 含义在 UML 上层结构文档中 VisibilityKind 类的描述中给出(当前 v2.4.1 文档中的第 7.3.56 节可在 http://www.omg.org/spec/UML/2.4.1 获得)。

      包访问~

      包元素由不是包的命名空间拥有,并且 对与其拥有的相同包中的元素可见 命名空间。只有不属于包的命名元素可以 标记为具有包可见性。任何标记为具有 包的可见性对最近的所有元素都是可见的 封闭包(假设其他拥有元素具有适当的 能见度)。在最近的封闭包装之外,标记为的元素 因为具有包可见性是不可见的。

      这与 Java 中的默认包访问相同(正如 Alexander 所说),但请注意,UML 保护访问 #相同,因为在 Java 中,protected 可以访问 以及子类(例如,参见this question)。 UML 定义是

      受保护的元素对具有泛化的元素可见 与拥有它的命名空间的关系。

      关键原则是 UML 概念是独立于语言的,尽管显然它们的设计目的是与实际编程语言中的想法相关。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-09-26
        • 1970-01-01
        • 2010-09-29
        • 1970-01-01
        • 1970-01-01
        • 2020-08-21
        • 2015-12-18
        • 1970-01-01
        相关资源
        最近更新 更多