это ключевое слово в Java: что такое и как использовать с примером

Что это за ключевое слово в Java?

это ключевое слово в Java — это ссылочная переменная, которая ссылается на текущий объект метода или конструктора. Основная цель использования этого ключевого слова в Java заключается в устранении путаницы между атрибутами класса и параметрами с одинаковыми именами.

Фоллоwing различные варианты использования ключевого слова this в Java:

  • Его можно использовать для ссылки на переменную экземпляра текущего класса.
  • Его можно использовать для вызова или инициации текущего конструктора класса.
  • Его можно передать в качестве аргумента при вызове метода.
  • Его можно передать в качестве аргумента при вызове конструктора.
  • Его можно использовать для возврата текущего экземпляра класса.

Нажмите здесь если видео недоступно

Разберитесь с ключевым словом «this» на примере.

это ключевое слово в Java
Пример этого ключевого слова в Java

  1. Класс: учетная запись класса
  2. Переменная экземпляра: а и б
  3. Данные набора методов: Чтобы установить значение для a и b.
  4. Метод Показать данные: Для отображения значений a и b.
  5. Основной метод: где мы создаем объект для класса Account и вызываем методы, устанавливаем данные и показываем данные.

Давайте скомпилируем и запустим код

Наш ожидаемый результат для A и B должен быть инициализирован значениями 2 и 3 соответственно.

Но значение равно 0. Почему? Пусть расследуют.

это ключевое слово в Java

В данных метода Set аргументы объявляются как a и b, а переменные экземпляра также называются как a и b.

это ключевое слово в Java

Во время выполнения компилятор путается. Является ли «a» в левой части назначенного оператора переменной экземпляра или локальной переменной. Следовательно, он не устанавливает значение «a» при вызове данных набора методов.

это ключевое слово в Java

Решение — ключевое слово «this»

Добавьте к 'a' и 'b' ключевое слово Java this, за которым следует оператор точки (.).

это ключевое слово в Java

Во время выполнения кода, когда объект вызывает метод setdata. Ключевое слово «this» заменяется обработчиком объекта «obj». (См. изображение ниже).

это ключевое слово в Java

Итак, теперь компилятор знает,

  • Буква «a» слева — это переменная экземпляра.
  • В то время как «а» в правой части является локальной переменной

переменные инициализируются правильно, и отображается ожидаемый результат.

это ключевое слово в Java

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

это ключевое слово в Java

Но на этот раз вы создаете два объекта класса, каждый из которых вызывает метод set data.

Как компилятор определит, должен ли он работать с переменной экземпляра объекта 1 или объекта 2.

это ключевое слово в Java

Ну, компилятор неявно добавляет переменная экземпляра с ключевым словом «this» (изображение ниже).

это ключевое слово в Java

Таким образом, когда объект 1 вызывает метод set data, к переменной экземпляра добавляется ее ссылочная переменная.

это ключевое слово в Java

Пока объект 2 вызывает метод set data, переменная экземпляра объекта 2 изменяется.

это ключевое слово в Java

Этот процесс берет на себя сам компилятор. Вам не нужно явно добавлять ключевое слово this, если только не возникнет исключительная ситуация, как в нашем примере.

Пример: Чтобы научиться использовать ключевое слово «this»

Шаг 1) Скопируйте следующееwing код в блокнот.

class Account{
int a;
int b;

 public void setData(int a ,int b){
  a = a;
  b = b;
 }
 public void showData(){
   System.out.println("Value of A ="+a);
   System.out.println("Value of B ="+b);
 }
 public static void main(String args[]){
   Account obj = new Account();
   obj.setData(2,3);
   obj.showData();
 }
}

Шаг 2) Сохраните, скомпилируйте и запустите код.

Шаг 3) Значение a и b отображается как ноль? Чтобы исправить ошибку, добавьте в строки № 6 и 7 «этойКлючевое слово.

this.a =a;
this.b =b;

Шаг 4) Сохраните, скомпилируйте и запустите код. На этот раз значения a и b установлены на 2 и 3 соответственно.

Итоги

  • этой Ключевое слово в Java — это ссылочная переменная, которая ссылается на текущий объект.
  • Одним из вариантов использования этого ключевого слова в Java является ссылка на переменную экземпляра текущего класса.
  • Его можно использовать для вызова или инициации текущего конструктора класса.
  • Его можно передать в качестве аргумента при вызове метода.
  • этот указатель в Java может быть передан в качестве аргумента при вызове конструктора
  • этот оператор в Java можно использовать для возврата текущего экземпляра класса
  • в Java это ссылка на текущий объект, метод которого вызывается.
  • Вы можете использовать ключевое слово «this», чтобы избежать конфликтов имен в методе/конструкторе вашего экземпляра/объекта.

Ознакомьтесь с нашей статьей о вопросах для собеседования по Java: Открыть