Get() и Set() методы [дубликат]

176
05 апреля 2022, 10:30
На этот вопрос уже дан ответ здесь:
Геттеры-сеттеры в Java (1 ответ)
Закрыт 2 года назад.

Зачем делать private переменные и при этом создавать для них гэттеры и сеттеры?

Можно же просто public оставить? Как бы закрываем доступ от изменений и тут же даем этот доступ из сеттера и геттера.

Answer 1

Геттеры и сеттеры - это про безопасность. Если вы оставляете открытые поля, и работаете с ними напрямую, то они не защищены от неожиданных данных.

Например, вы создали объект, и у него есть поле int age. Вас устроит возраст -10000 лет? Вот тут и придут на помощь сеттеры, это полноценные методы, в которых вы производите в случае необходимости проверки на передаваемые в них данные (значения).

Ну а геттеры, если вы догадались, чтобы получить значение из закрытого поля.

READ ALSO
Запуск метода в новом потоке Java

Запуск метода в новом потоке Java

столкнулся с такой проблемой, у меня есть контейнер (ListView) и я читаю в него файл, ну соответственно, когда файл большой программа виснетЧто...

80
Как заблокировать любые нажатия на экран и при этом оставлять телефон включенным?

Как заблокировать любые нажатия на экран и при этом оставлять телефон включенным?

Как сделать так чтобы при нажатие на кнопку android приложения, выйти из приложения и поверх всех окон блокировать тач скрин, нажатие на экранА...

144
Как ищутся методы в суперклассе?

Как ищутся методы в суперклассе?

Объясните, пожалуйста, почему нижележащий код выводит:

152