Вопрос Для чего нужны Get'еры Set'еры в Java?

rtr

Capitan
Регистрация
16 Сен 2013
Сообщения
74
Репутация
-3
Спасибо
0
Монет
0
Для чего нужны Get'еры Set'еры в Java?
 
Дело в том, что в ООП часто изменение свойства должно вызывать некоторые дополнительные действия, помимо собственно изменения значения. Вот эти действия и осуществляют геттеры, сеттеры и прочие спаниели.
 
Есть переменные. Например у меня класс A с переменными a и b. Я могу дать ей значение, например: A.a = 5; Но если эта переменная ещё кому-то нужна, то никто не узнает что она изменилась. С помощью set методов (setA, setB) можно не только изменить переменную, но и сказать кому-то что она изменена. get методы (getA, getB) используются для того, чтобы так же получать значения. Методы get будут бессмыслены, если переменная открыта. Так что её делают приватной. Так нельзя даже использовать значение. Потому что она скрыта, делают метод которым так же можно узнать её значение.
 
getter - чтобы получить значение переменной, setter - чтобы присвоить значение переменной. В объектно-ориентированном программировании считается "дурным тоном" прямое обращение к переменным класса, поэтому переменные декларируются как private, напр: public class MyClass{ private String name; .... //для обращения к этой переменной декларируются методы: public String getName(){ return this.name; } public void setName(String name){ this.name = name; } .... }
 
Назад
Сверху