Студопедия — Основные элементы объектной модели.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Основные элементы объектной модели.






К основным понятиям ООП относят: объект, класс, атрибут, операция, интерфейс, компонент, связь.

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

Любой объект обладает состоянием, поведением и индивидуальностью.

Состояние объекта – одно из возможных условий, в которых он может существовать, при этом эти условия могут изменяться со временем.

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

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

Каждый объект обладает индивидуальностью. Индивидуальность – свойство объекта, отличающее его от других объектов. Структура и поведение схожих объектов определяют общий для них класс.

Замечание: термины «экземпляр класса» и «объект» являются синонимами.

В нотации языка UML объекты и классы отображаются в следующем виде:

Студент 33 группы

имя объекта

: студент

имя класса

Студент 33 группы: студент

имя объекта и класса

Класс – множество объектов, связанных общностью свойств, поведением, связями и семантикой.

Класс объединяет в себе атрибуты и операции.

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

: студент
Пол: string=ж Рост: integer Возраст: integer +СП: boolean
 
: студент
Пол: string=м Рост: integer Возраст: integer +СП: boolean
Имя f (…): тип Хождение в военкомат

 

 
 

 


Верхнее поле - имя класса, среднее - атрибуты класса, нижнее - операции класса. Взаимодействие отображается стрелочкой.

Замечание: аналогичным образом (графически) вводится объект (экземпляр класса).

Атрибут – поименованное свойство класса, определяющее диапазон допустимых значений, которое могут принимать экземпляры данного свойства.

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

У атрибута можно выделить 3 возможных значения: открытая, закрытая и защищенная секции.

Public (открытый) – это значение видимости атрибута предполагает, что данный атрибут и его значения будут видно всем остальным классам, с которыми есть связь. Любой такой класс может просмотреть или изменить значение атрибута.

В нотации языка UML открытый (доступный) атрибут отображается символом «+».

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

Замечание: при этом взаимодействующие классы могут попросить класс изменить атрибуты…

Protected (защищенный) – такой атрибут доступен только самому классу и его потомкам в иерархии наследования. для защищенного атрибута используется знак #.

Замечание: в общем случае атрибуты следует делать закрытыми или защищенными. В этом случае удается избежать ситуаций изменения атрибутов класса другими классами, связанными с ним.

Определенное воздействие одного объекта (класса) на другой с целью вызвать какую-либо реакцию называется операцией.

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

Операции отражают поведение объектов. Операция - запрос не изменяет состояние объекта. Операция-команда может изменять состояние объекта методами, которые предусмотрены в рамках интерфейса объекта, связанного с ним.

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

Пример: эллипс и окружность.

В нотации языка UML операция выглядит следующим образом: имя_операции (аргумент_1: тип_аргумента_1; …): тип_возвращаемого_значения.

Одним из важнейших понятий ООП является понятие «полиморфизма».

Полиморфизм – это способность скрывать множество различных реализаций под единственным общим интерфейсом.

Интерфейс – совокупность операций, определяющих набор услуг класса или компонентов.

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

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

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

Между элементами объектной модели существуют различные виды связей. В качестве основных типов связей выделяют: ассоциации, зависимости и обобщения.

Ассоциация – семантическая (смысловая) связь между классами. Данный вид связи присутствует, как правило, на диаграмме классов и изображается в виде обыкновенной линии, соединяющей 2 класса.

Студент
 
Преподаватель
 
 

обучает

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

 







Дата добавления: 2015-09-15; просмотров: 982. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Типы конфликтных личностей (Дж. Скотт) Дж. Г. Скотт опирается на типологию Р. М. Брансом, но дополняет её. Они убеждены в своей абсолютной правоте и хотят, чтобы...

Гносеологический оптимизм, скептицизм, агностицизм.разновидности агностицизма Позицию Агностицизм защищает и критический реализм. Один из главных представителей этого направления...

Функциональные обязанности медсестры отделения реанимации · Медсестра отделения реанимации обязана осуществлять лечебно-профилактический и гигиенический уход за пациентами...

Стресс-лимитирующие факторы Поскольку в каждом реализующем факторе общего адаптацион­ного синдрома при бесконтрольном его развитии заложена потенци­альная опасность появления патогенных преобразований...

ТЕОРИЯ ЗАЩИТНЫХ МЕХАНИЗМОВ ЛИЧНОСТИ В современной психологической литературе встречаются различные термины, касающиеся феноменов защиты...

Этические проблемы проведения экспериментов на человеке и животных В настоящее время четко определены новые подходы и требования к биомедицинским исследованиям...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия