Несколько типов

Можно задать количество элементов любого атрибута, операции или типа параметров.

Допустимы следующие значения.

Количество элементов Атрибут, параметр или возвращаемое значение содержит следующее.
[1] Одно значение заданного типа. Это значение по умолчанию.
[0..1] Null или значение заданного типа.
[*] Коллекция, в состав которой может входить неограниченное число экземпляров заданного типа.
[1..*] Коллекция хотя бы одного экземпляра заданного типа.
[n..m] Коллекция, в которую входит от n до m экземпляров заданного типа.

Если количество элементов превышает 1, можно задать следующие свойства.

  • IsOrdered — если значение true, коллекция имеет определенный порядок.
  • IsUnique — если значение true, в коллекции отсутствуют повторяющиеся значения.

Видимость

Видимость указывает, можно ли получить доступ к атрибуту или операции за пределами определения класса. Допустимы следующие значения.

Имя Краткая форма Значение
Открытый + Возможен доступ изо всех других типов.
Закрытый - Доступ открыт только для внутреннего определения этого типа.
Пакет ~ Возможен доступ только внутри пакета, который содержит данный тип, а также в любых пакетах, явно импортирующих его.
Защищенный # Доступ открыт только данному типу и всем типам, которые его наследуют.

Задание сигнатуры атрибута или операции

Сигнатура атрибута или операции — это коллекция свойств, включающая видимость, имя, параметры (для операций) и тип.

Сигнатуру можно создать непосредственно на схеме. Щелкните атрибут или операцию, чтобы выделить элемент, затем повторно щелкните его.

Создайте сигнатуру в следующей форме.

Other

visibility attribute-name: Type

- или -

Other

visibility operation-name (parameter1: Type1,...): Type

Пример.

Other

+ AddItem (item: MenuItem, quantity: Integer): Boolean

Используйте краткую форму значения свойства visibility. Значение по умолчанию — + (открытый).

Каждый тип может представлять собой типы, определенные в модели, стандартные типы (такие как Integer или String) или имя нового типа, который еще не был определен.

Примечание

Если в списке параметров создается имя без типа, оно представляет собой имя параметра, а не типа. В этом примере MenuItem и Integer являются именами двух параметров с незаданным типами.

AddItem(MenuItem, Integer) /* parameter names, not types! */

Чтобы задать в сигнатуре количество элементов типа, запишите количество элементов в квадратных скобках после имени типа. Например, как показано ниже.

Other

+ AddItems (items: MenuItem [1..*])

+ MenuContent: MenuItem [*]

Если атрибут или операция статична, имя атрибута или операции отображается в сигнатуре подчеркнутым. Если атрибут или операция абстрактна, имя отображается курсивом.

Однако свойства Является статическим и Является абстрактным можно задать только в окне Свойства.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: