Инкапсуляция — это механизм объединения данных (полей) и методов, работающих с этими данными, в единый объект (класс), а также скрытие деталей реализации от внешнего мира.
Основные идеи:
- Сокрытие данных: Внутреннее состояние объекта скрыто и доступно только через публичные методы. Это предотвращает прямое изменение данных извне и гарантирует их целостность.
- Контроль доступа: Доступ к полям осуществляется через методы (геттеры и сеттеры), что позволяет применять логику проверки данных при их получении или изменении.
- Управляемость и поддержка: Изменение внутренней реализации класса не затрагивает код, использующий этот класс, если публичный интерфейс остается неизменным.
Пример:
java