Лабораторная работа №25. Понятие графа. Алгоритмы поиска кратчайших путей


­ имя: String [1] = "Без имени" {readOnly}


Download 1.45 Mb.
bet25/39
Sana13.09.2023
Hajmi1.45 Mb.
#1677325
TuriЛабораторная работа
1   ...   21   22   23   24   25   26   27   28   ...   39
Bog'liq
Blok 5

­ имя: String [1] = "Без имени" {readOnly} Обязательно только имя.

  • Метка видимостиобозначает, относится ли атрибут к открытым (обозначается значком +)​

(public), закрытым (­) (private), защищенным (#) (protected), пакетным (~) (package);

  • Имя атрибута – способ ссылки класса на атрибут – приблизительно соответствует имени​ поля в языке программирования;

  • Тип атрибута накладывает ограничение на вид объекта, который может быть размещен в​ атрибуте. Можно считать его аналогом типа поля в языке программирования.

  • Кратность рассмотрена ниже.​

  • Значение по умолчанию представляет собой значение для вновь создаваемых объектов,​ если атрибут не определен в процессе создания.

  • Элемент {строка свойств​ }​ позволяет указывать дополнительные свойства атрибута. В примере он равен {readOnly}, то есть клиенты класса не могут изменять атрибут. Если он пропущен, то, как правило, атрибут можно модифицировать. Остальные строки свойств будут описаны позже.


Рис. 2. Пример диаграммы классов
Кратность
Кратность свойства обозначает количество объектов, которые могут заполнять данное свойство.
Чаще всего встречаются следующие кратности:

  • 1 (Заказ может представить только один клиент, т.е в классе “Заказ” (Order) может быть​ только один “Клиент” (Customer)

  • 0..1 (Корпоративный клиент может иметь, а может и не иметь единственного торгового​ представителя.)

  • * (Клиент не обязан размещать заказ, и количество его заказов не ограничено. Он может​ разместить ноль или более заказов.)

В большинстве случаев кратности определяются своими нижней и верхней границами, например 2..4. Нижняя граница может быть нулем или положительным числом, верхняя граница представляет собой положительное число или * (без ограничений). Если нижняя и верхняя границы совпадают, то можно указать одно число; поэтому 1 эквивалентно 1..1. Поскольку это общий случай, * является сокращением
0..*.
При рассмотрении атрибутов могут встретиться термины, имеющие отношение к кратности.

  • Optional (необязательный) предполагает нулевую нижнюю границу.

  • Mandatory (обязательный) подразумевает, что нижняя граница равна или больше 1.

  • Single­valued (однозначный) – для такого атрибута верхняя граница равна 1.

  • Multivalued (многозначный) имеет в виду, что верхняя граница больше 1; обычно *.

Если свойство может иметь несколько значений, то лучше употреблять множественную форму его имени. По умолчанию элементы с множественной кратностью образуют множество, поэтому если вы просите клиента разместить заказы, то они приходят не в произвольном порядке. Если порядок заказов в ассоциации имеет значение, то в конце ассоциации необходимо добавить {ordered}. Если вы хотите​ разрешить повторы, то добавьте {nonunique}.​
Кратность атрибута по умолчанию равна [1].
Операции
Операции (operations) представляют собой действия, реализуемые некоторым классом.
Существует очевидное соответствие между операциями и методами класса. Обычно можно не показывать такие операции, которые просто манипулируют свойствами, поскольку они и так подразумеваются.
Полный синтаксис операций в языке UML выглядит следующим образом: видимость имя (список параметров) : возвращаемый тип {строка свойств}

  • Метка видимости​ обозначает, относится ли операция к открытым (обозначается значком +)​ (public), закрытым (­) (private), защищенным (#) (protected), пакетным (~) (package); ● Имя – это имя операции.​


  • Download 1.45 Mb.

    Do'stlaringiz bilan baham:
1   ...   21   22   23   24   25   26   27   28   ...   39




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling