Введение в объектно-ориентированный дизайн с Java - стр. 13
Создание объекта как члена класса называется экземпляром.
Таким образом, объект является экземпляром класса.
Класса состоит из набора атрибутов для объектов, которые должны быть созданы из класса.
Разные объекты класса имеют разные значения атрибутов. И атрибуты часто называются данными экземпляра класса.
И класс состоит из набора операций, которые отображают поведение объектов класса.
Операции также называются функциями или методами.
Инкапсуляция – это процесс связывания как атрибутов, так и методов вместе внутри класса.
Благодаря инкапсуляции внутренние детали класса могут быть скрыты извне.
И инкапсуляция позволяет доступ к элементам класса извне только через интерфейс, предоставляемый классом.
Как правило, класс разработан таким образом, что его данные (атрибуты) могут быть доступны только через методы класса и изолированы от прямого внешнего доступа.
Этот процесс изоляции данных объекта называется скрытием данных.
Любое приложение требует целого ряда объектов, взаимодействующих между собой. И объекты в системе могут взаимодействовать друг с другом, используя передачу сообщений. И сообщение, проходящее между двумя объектами, как правило, однонаправлено.
Передача сообщений позволяет осуществлять все взаимодействия между объектами.
И передача сообщения по существу включает вызов метода класса.
Наследование – это механизм, позволяющий создавать новые классы из существующих классов путем расширения и уточнения их возможностей.
Существующие классы называются базовыми классами, родительскими классами или суперклассами, а новые классы называются производными классами, дочерними классами или подклассами.
Подкласс может наследовать атрибуты и методы суперкласса при условии, что суперкласс позволяет это.
Кроме того, подкласс может добавлять свои собственные атрибуты и методы и может модифицировать любой из методов суперкласса.
Наследование определяет отношение «is-a».
Полиморфизм в объектно-ориентированной парадигме подразумевает использование операций по-разному, в зависимости от того, в каком экземпляре они работают.
Полиморфизм позволяет объектам с разными внутренними структурами иметь общий внешний интерфейс.
И полиморфизм особенно эффективен при реализации наследования.
Обобщение и специализация представляют собой иерархию отношений между классами, где подклассы наследуются от суперклассов.
В процессе обобщения общие характеристики классов объединяются для формирования класса на более высоком уровне иерархии, т. е. подклассы объединяются для формирования обобщенного суперкласса.
Специализация – это обратный процесс обобщения.