Ову кључну реч у Јави: Шта је & амп; Како се користи са Примером

Преглед садржаја:

Anonim

Шта је ово кључна реч у Јави?

ова кључна реч у Јави је референтна променљива која се односи на тренутни објекат методе или конструктора. Главна сврха употребе ове кључне речи у Јави је уклањање забуне између атрибута класе и параметара који имају иста имена.

Следе разне употребе кључне речи 'тхис' у Јави:

  • Може се користити за упућивање на променљиву инстанце тренутне класе
  • Може се користити за позивање или покретање конструктора тренутне класе
  • Може се проследити као аргумент у позиву методе
  • Може се проследити као аргумент у позиву конструктора
  • Може се користити за враћање тренутне инстанце класе

Кликните овде ако видео снимку није доступан

Разумевање кључне речи „овај“ на примеру.

Јава ова кључна реч Пример
  1. Класа : Рачун класе
  2. Променљива инстанце : а и б
  3. Метод Подеси податке : Да бисте поставили вредност за а и б.
  4. Метод Приказивање података : За приказ вредности за а и б.
  5. Главни метод: где креирамо објекат за класу налога и методе позива постављају податке и приказују податке.

Саставимо и покренимо код

Наш очекивани излаз за А и Б треба иницијализовати на вредности 2 односно 3.

Али вредност је 0, зашто? Нека истраже.

У методи Сет података, аргументи су декларисани као а и б, док су променљиве инстанце такође именоване као а и б.

Током извршавања, компајлер је збуњен. Да ли је „а“ на левој страни додељеног оператора променљива инстанце или локална променљива. Стога не поставља вредност 'а' када се позивају подаци скупа метода.

Решење је кључна реч „овај“

Додајте и 'а' и 'б' Јави ову кључну реч иза које следи тачка (.) Оператор.

Током извршавања кода када објекат позове методу 'сетдата'. Кључна реч 'ово' замењује се руковаоцем објектима "обј." (Погледајте слику испод).

Дакле, компајлер зна,

  • 'А' на левој страни је променљива инстанце.
  • Док је „а“ на десној страни локална променљива

Променљиве су правилно иницијализоване и приказан је очекивани излаз.

Претпоставимо да сте довољно паметни да одаберете различита имена за своју варијаблу инстанце и аргументе метода.

Али овог пута креирате два објекта класе, од којих сваки позива постављени метод података.

Како ће компајлер одредити да ли треба да ради на променљивој инстанце објекта 1 или објекта 2.

Па, компајлер имплицитно додаје променљиву инстанце са кључном речи „тхис“ (слика испод).

Такав да када објект 1 позива метод података сет, променљива инстанце додаје се својом референтном променљивом.

Док објекат 2 позива метод података скупа, променљива инстанце инсталације објекта 2 се мења.

О овом процесу брине сам преводилац. Кључну реч „тхис“ не морате да додате експлицитно, осим ако не постоји изузетна ситуација као у нашем примеру.

Пример: Да бисте научили употребу кључне речи „тхис“

Корак 1) Копирајте следећи код у бележницу.

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) Вредност а & б је приказана као нула? Да бисте исправили грешку, додајте ред бр. 6 и 7 помоћу кључне речи „ тхис “.

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

Корак 4) Спремите, компајлирајте и покрените код. Овог пута вредности а & б су постављене на 2 и 3, респективно.

Резиме

  • Ова кључна реч у Јави је референтна променљива која се односи на тренутни објекат.
  • Једна од употреба ове кључне речи у Јави је упућивање на тренутну променљиву инстанце класе
  • Може се користити за позивање или покретање конструктора тренутне класе
  • Може се проследити као аргумент у позиву методе
  • овај показивач у Јави може се проследити као аргумент у позиву конструктора
  • овај оператор у Јави се може користити за враћање тренутне инстанце класе
  • ово у Јави је референца на тренутни објекат, чија се метода позива.
  • Кључну реч „тхис“ можете користити да бисте избегли сукобе именовања у методи / конструктору ваше инстанце / објекта.