Kas ir šis atslēgvārds Java valodā?
šis atslēgvārds Java ir atsauces mainīgais, kas attiecas uz pašreizējo metodes vai konstruktora objektu. Galvenais šī atslēgvārda izmantošanas mērķis Java ir novērst neskaidrības starp klases atribūtiem un parametriem, kuriem ir vienādi nosaukumi.
Tālāk ir dažādi šī "atslēgvārda" lietojumi Java:
- To var izmantot, lai atsauktos uz pašreizējās klases instances mainīgo
- To var izmantot, lai izsauktu vai uzsāktu pašreizējās klases konstruktoru
- To var nodot kā argumentu metodes izsaukumā
- To var nodot kā argumentu konstruktora izsaukumā
- To var izmantot, lai atgrieztu pašreizējo klases instanci
Noklikšķiniet šeit, ja videoklips nav pieejams
Saprotiet šo atslēgvārdu ar piemēru.

- Klase : klases konts
- Instances mainīgais : a un b
- Metode Iestatīt datus : lai iestatītu vērtību a un b.
- Metode Rādīt datus : lai parādītu a un b vērtības.
- Galvenā metode: kur mēs izveidojam objektu Konta klasei un izsaukuma metožu datiem un parādām datus.
Apkoposim un palaidīsim kodu
Mūsu paredzamā izejas vērtība A un B ir jāinicializē attiecīgi līdz 2. un 3. vērtībai.
Bet vērtība ir 0, kāpēc? Ļaujiet izmeklēt.
Metodē Set data argumenti tiek deklarēti kā a un b, bet instances mainīgie tiek nosaukti arī kā a un b.
Izpildes laikā sastādītājs ir sajaukts. Vai "a" piešķirtā operatora kreisajā pusē ir instances mainīgais vai lokālais mainīgais. Tādējādi tas nenosaka “a” vērtību, kad tiek izsaukti metožu kopas dati.
Risinājums ir atslēgvārds “šis”
Pievienojiet “a” un “b” ar šo atslēgvārdu Java, kam seko punktu (.) Operators.
Koda izpildes laikā, kad objekts izsauc metodi “setdata”. Atslēgvārdu “šis” aizstāj ar objektu apstrādātāju “obj”. (Skatīt attēlu zemāk).
Tātad tagad sastādītājs zina,
- Kreisajā pusē esošais “a” ir instances mainīgais.
- Tā kā “a” labajā pusē ir lokāls mainīgais
Mainīgie tiek pareizi inicializēti, un tiek parādīts paredzamais rezultāts.
Pieņemsim, ka esat pietiekami gudrs, lai piemēra mainīgajam un metožu argumentiem izvēlētos dažādus nosaukumus.
Bet šoreiz jūs izveidojat divus klases objektus, katru izsaucot iestatīto datu metodi.
Kā sastādītājs noteiks, vai tam vajadzētu strādāt ar objekta 1 vai objekta 2 mainīgo.
Nu, tad kompilators netieši pievieno instancē mainīgo ar "šo" atslēgvārdu (attēlā zemāk).
Tāds, ka tad, kad objekts 1 izsauc iestatīto datu metodi, instances mainīgo pievieno tā atsauces mainīgais.
Kamēr objekts 2 izsauc iestatīto datu metodi, objekta 2. mainīgais mainās.
Par šo procesu rūpējas pats kompilators. “Šis” atslēgvārds nav jāpievieno skaidri, ja vien nav kāda ārkārtēja situācija, kā tas ir mūsu piemērā.
Piemērs: lai uzzinātu, kā lietot atslēgvārdu “šis”
1. darbība. Nokopējiet šo kodu piezīmju blokā.
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. solis. Saglabājiet, kompilējiet un palaidiet kodu.
3. solis . A & b vērtība tiek parādīta kā nulle? Lai labotu kļūdu, pievienojiet 6. un 7. rindiņu ar atslēgvārdu “ šis ”.
this.a =a;this.b =b;
4. solis. Saglabājiet, kompilējiet un palaidiet kodu. Šoreiz a & b vērtības tiek attiecīgi iestatītas uz 2 un 3.
Kopsavilkums
- šis atslēgvārds Java ir atsauces mainīgais, kas attiecas uz pašreizējo objektu.
- Viens no šī atslēgvārda lietojumiem Java ir atsauce uz pašreizējo klases instances mainīgo
- To var izmantot, lai izsauktu vai uzsāktu pašreizējās klases konstruktoru
- To var nodot kā argumentu metodes izsaukumā
- šo Java rādītāju var nodot kā argumentu konstruktora izsaukumā
- šo operatoru Java var izmantot, lai atgrieztu pašreizējo klases instanci
- tas Java valodā ir atsauce uz pašreizējo objektu, kura metode tiek izmantota.
- Lai izvairītos no konfliktu nosaukšanas instances / objekta metodē / konstruktorā, varat izmantot atslēgvārdu “šis”.