Java за неделю. Вводный курс. Валерий Станиславович Яценков

Чтение книги онлайн.

Читать онлайн книгу Java за неделю. Вводный курс - Валерий Станиславович Яценков страница 24

Java за неделю. Вводный курс - Валерий Станиславович Яценков

Скачать книгу

класса

      int fieldOne;

      int fieldTwo;

      // Метод для присваивания значений полям

      void set (int a, int b) {

      fieldOne = a;

      fieldTwo = b;

      }

      // Метод для перемножения значений полей

      int multiply () {

      return fieldOne*fieldTwo;

      }

      // Метод для суммирования значений полей

      int summ () {

      return fieldOne+fieldTwo;

      }

      }

      public class Listing6_3 {

      public static void main (String [] args) {

      // Объявляем переменные главного класса

      int input1, input2;

      String inputString;

      // Создаем объект своего класса

      MyClass obj=new MyClass ();

      // Окно ввода первого значения

      inputString=JOptionPane.showInputDialog («Введите первое значение»);

      input1 = Integer.parseInt (inputString);

      // Окно ввода второго значения

      inputString=JOptionPane.showInputDialog («Введите второе значение»);

      input2 = Integer.parseInt (inputString);

      // Вызываем метод для присвоения значений полям объекта

      obj.set (input1, input2);

      // Выводим в диалоговое окно результат сложения

      JOptionPane.showMessageDialog (null,«Результат сложения: "+obj.summ ());

      // Выводим в диалоговое окно результат умножения

      JOptionPane.showMessageDialog (null,«Результат умножения: "+obj.multiply ());

      }

      }

      В примере из листинга 6.3 поля класса и метод для присвоения значений этим полям использованы в качестве иллюстрации. В данном примере мы могли бы передавать значения в методы сложения и умножения напрямую, через аргументы вызова. Но на практике в языке Java принято использовать специально написанные методы. Почему?

      6.2.1 Геттеры и сеттеры

      Метод, присваивающий значения полям объекта, называется сеттер (setter, от английского to set – установить, назначить). Согласно правилам именования Java этот метод должен иметь имя set <свойство> (). Метод, возвращающий значения полей объекта, называется геттер (getter, от английского to get – взять, получить). Этот метод должен иметь имя get <свойство> (). Впрочем, указывать имя свойства не обязательно, о чем говорят угловые скобки.

      Геттеры и сеттеры – это стандартные термины программирования на языке Java. Использование геттеров и сеттеров является более безопасным, чем прямое обращение к переменным объекта, поскольку не позволяет менять значения случайно. При использовании сеттера значения полей будут изменены только при вызове метода set (), и только способом, который описан в этом методе.

      6.2.2 Перегрузка методов

      Язык Java позволяет описывать несколько методов с одинаковыми именами в одном и том же классе. Одноименные методы различаются типом и/или количеством аргументов. Такой подход называется перегрузкой методов и позволяет создавать эффективный и гибкий программный код.

      Что происходит, когда мы вызываем метод с одним и тем же именем,

Скачать книгу