Студопедия Главная Случайная страница Обратная связь

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

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





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

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

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

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

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

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

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

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

В нотации языка 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; просмотров: 1016. Нарушение авторских прав; Мы поможем в написании вашей работы!




Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


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


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


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

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

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

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сравнительно-исторический метод в языкознании сравнительно-исторический метод в языкознании является одним из основных и представляет собой совокупность приёмов...

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

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

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