Геттеры и Сеттеры в Java

FacebooktwittertumblrFacebooktwittertumblr

Предлагаем прочитать Вам 2 статьи о том, что такое геттеры и сеттеры. Это статьи из "Самоучителя по Java"  от Vertex Academy.

  • Статью №1 Вы найдете ниже.
  • Статью №2 Вы можете прочитать по ссылочке.

Начнем с того, что напишем свой класс! К примеру возьмем класс "Машина" - "Car".

Например:

При вызове разных Конструкторов они будут заполняться значениями по умолчанию или теми, которые Вы укажите!

Вывод будет следующим:

3-constrs-vertex

Так же есть методы, при вызове которых Машина едет или останавливается:

  • run() - вывод на консоль "Car - Run..."
  • stop() - вывод на консоль "Car - Stop..."

Еще есть метод, который отдает всю информацию о Машине.

  • info(); - вывод в консоль информации о Машине.

Вы наверняка заметили, что поля: color и model - приватные (private), а значит произвести с ними какое-то действие вне этого Класса - невозможно!

Но нужно же в любой момент иметь возможность узнать какого цвета или модели Машина и не вызывать при этом метод info() - который отдает всю информацию о Машине. В таком случае пользуемся Геттерами!

gettery-settery

Например:

Теперь добавили два метода:

  • getColor() - который возвращает цвет Машины.
  • getModel() - который возвращает модель Машины.

Это гораздо удобней, чем просто переменные, потому что Вы получаете не просто цвет или модельВы получаете метод, а значит можно в методе до того как вернуть цвет  или модель, произвести какие-то действия, крайне важные для жизни данного объекта. И таким образом Вы не нарушаете правила Инкапсуляции!

Но что, если Вы хотите перекрасить Машину? Тогда на помощь приходят Сеттеры - Setters:

gettery-settery-1

Например:

Теперь добавили два метода:

  • setColor() - который задает (переопределяет) на новый цвет - в Машины.
  • setModel() - который выводит на консоль сообщение, что нельзя в Машине поменять модель.

Такая обработка полей нужна для того, чтобы предвидеть и устранить нежелаемые действия над Объектом. Заранее предотвратить!

В таком случае Объектом можно пользоваться весьма корректно и без "происшествий".

Осталось только посмотреть это все в действии. Поехали!

Например:

А теперь создадим Объекты и произведем над ними действия:

Вывод будет следующим:

outputcarvertex


Надеемся, что наша статья была Вам полезна. Также есть возможность записаться на наши курсы по Java в Киеве. Обучаем с нуля. Детальную информацию Вы можете найти у нас на сайте.

 

 

FacebooktwittertumblrFacebooktwittertumblr

FacebooktwittertumblrFacebooktwittertumblr
Самоучители--узнать детальнее--