Редактирование Объектно-ориентированное программирование (секция)
Материал из Documentation.
Перейти к:
навигация
,
поиск
== Основные понятия == Объект в ООП — это модель экземпляра определённого класса сущностей моделируемой системы. Класс содержит определение данных и методов, являющихся общими для входящих в него объектов. Он задаётся атрибутами (свойствами класса), описывающими состояние его объектов, совокупностью процедур (методов класса) и правилами доступа извне (из других частей программы) к атрибутам и методам, определяющими [[интерфейс класса]]. В иерархии наследования [[класс-потомок]] порождается путём добавления одного или нескольких атрибутов и/или методов к атрибутам и/или методам одного или нескольких классов-родителей. Например, от класса «[[точка]]» с атрибутами «[[абсцисса]]», «[[ордината]]» и методами создания, чтения и изменения координат может быть порождён класс «[[цветная точка]]», объекты которого будут иметь дополнительный атрибут «[[цвет]]» и некоторые методы управления этим атрибутом.<ref>[https://bigenc.ru/technology_and_technique/text/3958439]</ref> Объявление класса задаёт тип данных, который может быть использован при определении других классов.<ref>[https://bigenc.ru/technology_and_technique/text/3958439]</ref> Важнейшей особенностью ООП является возможность утаивания деталей реализации за интерфейсом класса (так называемая [[инкапсуляция]]). Предположим, нужно, чтобы вне класса координаты точки могли изменяться не произвольно, а только по определённому правилу (например, поворотом точки на заданный угол вокруг начала координат). В таком случае в других частях программы изменение координат делается доступным только посредством интерфейсного метода, которому передаётся значение параметра «угол поворота». При этом [[алгоритм]] поворота скрывается внутри реализации метода изменения координат.<ref>[https://bigenc.ru/technology_and_technique/text/3958439]</ref> Объявление класса определяет его [[интерфейс]], который может использоваться другими разработчиками, не знающими реализации методов этого класса.<ref>[https://bigenc.ru/technology_and_technique/text/3958439]</ref>
Описание изменений:
Отменить
|
Справка по редактированию
(в новом окне)
Просмотры
Статья
Обсуждение
Править
История
Личные инструменты
Представиться системе
Навигация
Заглавная страница
Случайная статья
Инструменты
Ссылки сюда
Связанные правки
Загрузить файл
Спецстраницы