Get() и Set() методы

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

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


Ответы (1 шт):

Автор решения: dmtr

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

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

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

→ Ссылка