Что означает этот значок в виде пакета на этой UML-диаграмме? - PullRequest
0 голосов
/ 22 октября 2018

Я получил эту диаграмму от netbeans, и я понятия не имею, что означает значок, выглядящий на упаковке, и «~» на тетраэдре (int a) означает

enter image description here

Ответы [ 3 ]

0 голосов
/ 22 октября 2018

~ обозначает доступ на уровне пакета для конструктора, извините, не уверен, что означают значки.

0 голосов
/ 22 октября 2018

Это индикаторы видимости.Стр. 118 (и другие) в спецификации UML 2.5:

<visibility> is the visibility of the Operation (see 7.4). <visibility> ::= ‘+’ | ‘-‘ | ‘#’ | ‘~’

P.246:

Видимость элемента packagedElement может быть указана с помощью предшествующего имени символа видимости («+» для открытого и «-» для частного).Упаковки могут не иметь защиты или видимости упаковки.

и на P 167:

enter image description here

Интересно, что нет места, гдевсе символы связаны с их значением.Таким образом, вы просто «угадываете» из порядка на диаграмме, что protected равен #, а пакет ~.

Графические украшения являются изобретениями создателя инструмента, поэтому не являются стандартом UML.Вероятно, значок коробки используется для операций, а шары - для атрибутов (плюс какой-то дополнительный трюк, который я не могу догадаться; выглядит как ключ для, вероятно, постоянного атрибута?).Значок в верхней части рядом с именем может быть получен из стереотипа, но я думаю, это просто то, что вы найдете в руководстве по инструменту.Не обязательно неправильно с точки зрения UML, но, как вы столкнулись, просто сбивает с толку.

0 голосов
/ 22 октября 2018

Символ слева от тильды (~) не является частью языка UML.Он добавляется программным обеспечением, которое вы используете для создания / просмотра диаграммы.

Сам символ тильды представляет package private видимость в UML, что, как мне кажется, является иконкой, пытающейся визуализировать.

Когда конструктор пакет приватный , он доступен только для классов в одном пакете.

Аналогично, красный кружок рядом с символом "+" для public visibility и красный кружок с ключом рядом с символом "#" (для protected visibility), по-видимому, визуально представляют видимость членов.

...