В прошлом уроке мы рассмотрели базовые принципы инкапсуляции. Теперь, продолжая эту тему, пора познакомиться с модификаторами доступа public
и private
.
С их помощью можно ограничивать доступ к определённым элементам класса — например, полям и методам.
Если вспомнить пример из предидущего урока, то в классе Cat
перед полями String name
и String color
не было указано никаких модификаторов. Однако, по умолчанию они являются public
, что означает открытый доступ.
Благодаря этому мы могли напрямую через объект кота записать значения в его поля name и color вот так – somecat.name = “Barsik” и somecat.color = “White”.
Если мы поставим перед этими полями private, то это уже будет запрещено.
С полями класса помеченными как private можно работать только в пределах класса, то есть, например, в пределах методов или конструкторов этого класса.
Поясним на примере:
Вывод:

Все эти модификаторы также можно применять к методам класса, конструкторам и самим классам — с той же целью: ограничить доступ к внутренним элементам класса извне.
Table of Contents
Свойства в ООП (getters, setters)
Геттеры и сеттеры в Java: зачем нужны, как работают с private полями, инкапсуляция данных и контроль доступа к свойствам класса.
Наследование в Java
Изучите наследование в Java: принцип повторного использования кода, ключевое слово extends, иерархия классов и доступ к полям родительского класса.
Полиморфизм
Полиморфизм в Java: переопределение методов, использование одного имени для разных задач. Практические примеры.