Переменные

Top  Previous  Next

Класс может иметь произвольное количество переменных. Переменные служат для хранения внутренней информации класса и взаимодействия класса с окружением.
 

Если класс является открытым (см. раздел "Стереотип класса"), то он может иметь внешние и внутренние переменные.

 

Внешние переменные определяют интерфейс открытого класса и на структурной схеме класса располагаются по периметру границы класса (см. раздел "Граница класса"), а на других структурных схемах – по периметру внутренних объектов этого класса (см. раздел "Внутренний объект").

 

Внутренние переменные являются частью внутренней реализации класса и не имеют прямого отношения к интерфейсу класса.

Изолированный класс (см. раздел "Стереотип класса") может содержать только внутренние переменные.

Внутренние переменные изолированного класса обычно называются просто переменными.

 

Определение переменной включает в себя:

имя

вид (если переменная является внешней)

тип

начальное значение по умолчанию

возможное указание переменной как дискретной

 

Имя переменной задаётся идентификатором (см. раздел "Идентификатор") и однозначно идентифицирует переменную.

 

Вид переменной определён только для внешних переменных. Вид внешней переменной определяет, какую роль играет переменная в интерфейсе класса.

Существуют следующие виды внешних переменных:

вход

выход

контакт

поток

коннектор

 

Переменная вида вход изображается на структурной схеме входящей стрелкой. Значение переменной вида вход может изменяться только извне объекта.

 

Переменная вида выход изображается на структурной схеме входящей стрелкой. Значение переменной вида выход может изменяться только изнутри объекта.

 

Значение переменной вида контакт может изменяться как извне, так и изнутри класса. Значения переменных вида контакт, соединённых связями, всегда равны.

Изображается на структурной схеме квадратом.

 

Значение переменной вида поток также может изменяться как извне, так и изнутри класса. Сумма значений переменных вида поток, соединённых связями, всегда равна нулю.

Изображается на структурной схеме ромбом.

 

Переменная вида коннектор представляет собой набор из одного или более компонентов, каждый из которых аналогичен отдельной внешней переменной и в свою очередь может иметь любой вид (см. раздел "Тип коннектора"). Переменные вида коннектор обычно применяются в моделях физических систем, в том числе, электрических цепей.

Изображается на структурной схеме закрашенным квадратом.

 

Тип переменной задаётся именем типа данных (см. раздел "Типы данных"). Переменные вида контакт и поток всегда имеют тип double (см. раздел "Вещественный тип") или производный от double.

Переменная вида коннектор в качестве типа может иметь только определённый пользователем тип коннектора (см. раздел "Тип коннектора").

 

Начальное значение по умолчанию задаётся выражением, в котором могут использоваться другие переменные класса, при этом не допускается,

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

 

Начальное значение переменной задаётся отдельно для каждого экземпляра класса через набор начальных значений переменных внутреннего объекта (см. раздел "Внутренний объект")

или объекта-деятельности в состоянии карты поведения (см. раздел "Состояние"), а также в операторе do (Оператор выполнения подмодели).

Для  "динамического" экземпляра класса фактическое значение переменной может быть указано при вызове конструктора new (Динамические объекты).

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

 

Каждая переменная принимает свое начальное значение при создании экземпляра класса и в дальнейшем может менять своё значение в результате явных присваиваний

или решения совокупной системы уравнений модели (см. раздел "Совокупная система уравнений").

 

Если переменная отмечена как дискретная, то это означает, что ее значение может быть изменено только в дискретных действиях. На непрерывных интервалах эта переменная является константой.

 

Связи между переменными подробно обсуждается в разделе "Связь".

 

Для внешних переменных в редакторе структуры может быть указан цвет, которым будет изображаться эта переменная на структурной схеме.