Ce este acest cuvânt cheie în Java?

Java este un limbaj orientat pe obiecte și pot exista multe obiecte la un moment dat, pe cele pe care le-am putea opera, acest cuvânt cheie „aici” apare aici în imagine, deoarece ajută la punctarea instanței actuale sau a obiectului curent al unei clase.

Prin urmare, atunci când ne uităm să invocăm metode ale clasei curente, când dorim să invocăm constructorul clasei curente, returnăm instanța curentă din metode, trecem instanța curentă la metode; în toate aceste cazuri, acest cuvânt cheie este util.

Exemple de cazuri de utilizare

  1. Blocul sincronizat din multithreading folosește acest cuvânt cheie ca argument
  2. Supraîncărcarea constructorului

De ce să utilizați acest cuvânt cheie în Java?

  • „această” variabilă acționează ca o variabilă finală în Java, adică nu putem atribui nicio valoare acestei variabile „această”, aceasta poate fi verificată încrucișând atribuind o valoare acestui cuvânt cheie „acest” și va duce la o eroare de compilare.
  • „acest” poate fi folosit pentru a face referire și la membrii statici (dar nu se va face), deoarece membrii statici sunt declarați o singură dată, adică alocarea de memorie făcută lor este o singură dată și dacă încercăm să facem manipulări folosind „acest” cuvânt cheie, atunci va manipula întotdeauna datele plasate în acea locație de memorie, mai degrabă decât să creeze date la noi locații de memorie, ceea ce face obiectele.
  • Acest lucru împiedică sarcina de a face alocări inutile la variabile și uneori nu trebuie să creăm variabile suplimentare, „acest” cuvânt cheie oriunde este folosit ne oferă garanția la care se face referire la instanța curentă.

Importanța acestui cuvânt cheie

Exemplele de mai jos arată că trebuie să creăm variabile cu nume diferite pentru proprietăți particulare, ele pot fi pur și simplu atribuite în constructor în timpul inițializării obiectului folosind acest cuvânt cheie.

  • Împiedică conflictul de variabile de membru și de nume local, se poate referi variabila de membru folosind acest cuvânt cheie.

public class Student (
int marks;
String subjectName;
//constructor
public Student(int marks, String subjectName)
(
this.marks = marks;
this.subjectName=subjectName;
)
public Student()
(
)
public static void main(String args())
(
Student s = new Student(1, "name");
)
)

  • Metodele clasei de obiecte pot fi, de asemenea, invocate folosind aceasta.

//consider a method shown here
public String getName()
(
return this.toString();
)

  • Aceasta poate fi utilizată în metode setter și getter, pentru a returna instanțele actuale.

Public int getmarks()
(
return this.marks;
)
public void setMarks(int marks)
(
this.marks =marks;
)

Utilizări particulare ale acestui cuvânt cheie

Iată câteva utilizări ale acestui cuvânt cheie explicat mai jos cu implementarea:

1. Utilizați Cu-într-un câmp

public class PointCoordinates (
public int xval = 0;
public int yval = 0;
//constructor
public PointCoordinates (int a, int b) (
xval = a;
yval = b;
)
public static void main(String args())
(
)
)

Dar ar fi putut fi scris astfel:

public class PointCoordinates (
public int xval = 0;
public int yval= 0;
//constructor
public PointCoordinates (int xval, int yval) (
this.xval = xval;
this.yval = yval;
)
public static void main(String args())
(
)
)

Așa a fost și ceva pe care l-am explicat și în ultima secțiune, unde se poate vedea că convențiile de denumire pentru un fel de câmp de date pot fi păstrate uniforme dacă folosim cuvântul cheie „acest”.

Prin urmare, nu se presupune că un dezvoltator nu ține evidența sau maparea unui grafic de variabile pentru același tip de câmp de date logice.

2. Invocarea constructorului folosind acest cuvânt cheie

Putem folosi acest cuvânt cheie în interiorul unui constructor și să apelăm un alt constructor de acolo, în aceeași clasă. Aceasta se mai numește invocare constructivă explicită.

Să luăm în considerare un exemplu care arată mai jos pentru același lucru -

public class Square (
private int x;
private int side;
public Square () (
this(1);
)
public Square (int side) (
this(0, side);
)
public Square (int x, int side) (
this.x = x;
this.side = side;
)
public static void main(String args())
(
)
)

Există trei constructori aici în imagine, rețineți că constructorul implicit trebuie să fie plasat explicit atunci când facem o suprasarcină a constructorului.

Acești constructori inițializează unele variabile de membru, compilatorul primește aici o indicație despre invocarea constructorului prin numărul de parametri folosiți în cadrul metodelor.

3. Returnarea instanței de clasă curentă folosind acest cuvânt cheie

class Rectangle
(
int height;
int width;
Rectangle()
(
height = 10;
width = 20;
)
//Method to return current class instance
Rectangle getObject()
(
return this;
)
public void print()
(
System.out.println(height+", "+ width);
)
public static void main(String() args)
(
Rectangle object = new Rectangle();
object.getObject().print();
)
)

Deci, în exemplul prezentat mai sus, se poate observa că obiectul curent este returnat dintr-o metodă getter și, în acest caz, a fost invocată metoda particulară „print”.

4. Utilizați ca parametru metodă

class Rectangle
(
int height;
int width;
Rectangle()
(
height = 10;
width = 20;
)
void getObject()
(
print(this);
)
public void print(Rectangle object)
(
System.out.println(object.height + ", " + object.width);
)
public static void main(String() args)
(
Rectangle object = new Rectangle();
object.getObject();
)
)

Exemplul a menționat modul în care obiectul curent este trecut la o metodă care poate utiliza acest obiect pentru utilizarea personalizată.

Concluzie

Am văzut aici diverse cazuri de utilizare, citând variantele împotriva utilizării acestui cuvânt cheie în java și unde să le folosim și unde nu să le utilizăm, aceste condiții au fost exprimate în mod explicit.
Cuvântul cheie „acest” este comun printre toate limbajele de programare, de asemenea, în cadrele bazate pe javascript, „acest” găsește un rol cheie.
Cuvântul cheie „acest” poate deveni aerian dacă nu este înțeles bine și este de mare ajutor pentru dezvoltatori dacă sunt înțeleși corect.

Articole recomandate

Acesta este un ghid pentru acest cuvânt cheie în java. Aici discutăm despre importanță, utilizări particulare și exemple ale acestui cuvânt cheie în java, împreună cu implementarea codului său. De asemenea, puteți consulta următoarele articole pentru a afla mai multe-

  1. Obiect în Java
  2. Încapsulare în JavaScript
  3. Cuvânt cheie statică în Java
  4. Supraîncărcare și suprasolicitare în Java
  5. Funcția și regulile de suprasolicitare în Python