December 25, 2018

ООП

Основные понятия

Сущность — это объект, который представляет то, что имеет идентификатор, который система заинтересована в отслеживании. Типичными примерами являются клиенты и учетные записи.

Класс — это шаблон для создания объектов.

Объект — это экземпляр класса.

Агрегация — отношение «часть-целое» между двумя равноправными объектами, когда один объект (контейнер) имеет ссылку на другой объект. Оба объекта могут существовать независимо: если контейнер будет уничтожен, то его содержимое — нет.

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

Три основных компонента парадигмы объектно-ориентированного программирования

Инкапсуляция — это свойство, позволяющее объединить данные и методы, работающие с ними в классе, и скрыть детали реализации от пользователя.

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

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