Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PiRIS_mobile.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.45 Mб
Скачать

15. Что такое класс объектной модели, атрибуты и операции класса и их форматы спецификаций на примере Вашей курсовой работы. (92)

Понятия объекта и класса настолько тесно связаны, что невозможно говорить об объекте безотносительно к его классу.

Класс – это дескриптор множества объектов, обладающих одинаковым набором атрибутов и операций.

Классэто некое множество объектов, имеющих общую структуру и общее поведение.

Классэто контейнер для кода и данных и способ инкапсуляции пространства имен и управления видимостью переменных и методов.

Объект обозначает конкретную сущность, определенную во времени и в пространстве, класс же, определяет лишь абстракцию существенного в объекте.

Любой конкретный объект является просто экземпляром (instance) класса. Класс служит в качестве шаблона (template) для создания объектов. Каждый объект, созданный по шаблону, содержит значения атрибутов, соответствующие типам атрибутов, определенных в классе, и может вызвать операции, определенные в классе.

Свойства класса представляют единое понятие, воплощающееся в двух, совершенно различных, сущностях: в атрибутах и в ассоциациях. Класс, как концепция предметной области, описывается атрибутами, а взаимодействия класса с другими классами на диаграмме классов, фиксируются через ассоциации.

Атрибут представляет собой пару тип-значение. Класс определяет типы атрибутов. Объекты содержат значения атрибутов.

Полный формат атрибута:

видимость имя : тип [кратность] = значение по умолчанию {характеристика}

Например:

- имя атрибута : string [1] = «Без имени» {readOnly}

Обязательно только имя.

  • Метка видимость обозначает, относится ли атрибут к открытому (+) (public), или закрытому (-) (private), защищенному (#) (protected) или к пакетному (~) (package, internal) типам видимости.

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

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

  • кратность определим при рассмотрении ассоциации.

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

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

Отметим ряд других характеристик:

  • changeable – нет ограничений на модификацию значения атрибута;

  • addOnly – для атрибутов с множественностью большей единицы; дополнительные значения могут быть добавлены, но после создания значение не может удаляться или изменяться;

  • frozen – после инициализации объекта значение атрибута не изменяется;

  • ordered – ограничение {повторение} подразумевает, что целевые объекты некоторым образом упорядочены, то есть образуют список, причем в этом списке каждый целевой объект может появиться только один раз.

Объект содержит данные (атрибуты) и использует операции, определенные в своем классе, для работы с этими данными. Имя сообщения и имя операции совпадают. Операция содержит список параметров, которым при вызове сообщения могут быть присвоены определенные значения, и может возвращать значение вызывающему объекту.

Имя операции вместе со списком типов формальных параметров называется сигнатурой (signature) операции. Сигнатура (подпись) в пределах класса должна быть уникальной. Это значит, что класс может обладать множеством операций с одним и тем же именем, при условии, что списки типов параметров этих операций отличаются.

Формат синтаксиса операции в языке UML выглядит следующим образом:

видимость Имя (список параметров): возвращаемый тип {характеристика}

  • Метка видимости обозначает, относится ли операция к открытым (+) (public) или закрытым (-) (private), либо к пакетному (~) (package), либо к защищенному (#) (protected) уровням видимости.

  • Список параметров – список параметров операции.

  • Возвращаемый тип – тип возвращаемого значения, если таковое есть.

  • Характеристика – значение свойства, которое применяется к данной операции.

Параметры операции имеют вид:

направление имя : тип = значение по умолчанию

  • имя, тип и значение по умолчанию те же самые, что и для атрибутов.

  • направление обозначает, является ли параметр входным (in), выходным (out) или тем и другим (inout). Если направление не указано, то предполагается in. Например, в классе Счет операция может выглядеть так:

+balanceOn (data: Date): Money

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]