知识卡片

可见性的跨语言差异

普通读书笔记卡 · 1944.r

内容

UML提供4个可见性缩写:+(公开)、-(私有)、~(包)、#(保护),公开元素可被任何其他类使用,私有元素只能被拥有它的类使用。这套记号看似简单,实际含义并不统一:多种语言都用public、private、protected这类术语,但同一词在不同语言里对应的访问规则不完全相同,UML只在元模型层面定义这4个级别,解释权交给使用的语言。读UML图可见性标记时,须先弄清按哪种语言规则标的。

参考来源

- 位置:《UML精粹:标准对象建模语言简明指南(第3版)》第5章《类图:进阶概念》(源文件:_epub-src/EPUB/4.xhtml) - 结论依据:原文说明"虽然许多语言使用的术语类似,如public、private和protected,但它们在不同的语言里代表着不同的东西……UML提供4个可见性缩写:+(公开)、-(私有)、~(包)和#(保护),这4个级别在UML元模型内使用,也在UML元模型内定义,但它们的定义随着语言变化会有微小的不同"。 - 原始内容:虽然许多语言使用的术语类似,如public、private和protected,但它们在不同的语言里代表着不同的东西……UML提供4个可见性缩写:+(公开)、-(私有)、~(包)和#(保护)……但它们的定义随着语言变化会有微小的不同。当你使用可见性时,要使用你正在使用的语言的规则。