dieses Keyword in Java
โก Intelligente Zusammenfassung
Java Das Schlรผsselwort `this` ist eine Referenzvariable, die innerhalb einer Methode oder eines Konstruktors auf das aktuelle Objekt verweist. LessDie Abschnitte behandeln Zweck, gรคngige Anwendungsfรคlle, Namenskonflikte, Konstruktorverkettung und ein durchgerechnetes Beispiel.

Was ist dieses Schlรผsselwort in Java?
Das dieses Schlรผsselwort in Java ist eine Referenzvariable, die auf das aktuelle Objekt einer Methode oder eines Konstruktors verweist. Der Hauptzweck der Verwendung dieses Schlรผsselworts Java Ziel ist es, die Verwechslung zwischen Klassenattributen und Parametern mit demselben Namen zu beseitigen.
Verwendung dieses Schlรผsselworts in Java
Im Folgenden werden verschiedene Verwendungen des Schlรผsselworts โthisโ aufgefรผhrt. Java:
- Es kann verwendet werden, um auf die Instanzvariable der aktuellen Klasse zu verweisen.
- Es kann verwendet werden, um den aktuellen Klassenkonstruktor aufzurufen oder zu initialisieren.
- Es kann als Argument in einem Methodenaufruf รผbergeben werden.
- Es kann als Argument beim Aufruf eines Konstruktors รผbergeben werden.
- Es kann verwendet werden, um die aktuelle Klasseninstanz zurรผckzugeben.
Klicken Sie auf werden auf dieser Seite erlรคutert wenn das Video nicht zugรคnglich ist
Wie man das Schlรผsselwort โthisโ anhand eines Beispiels versteht

- Klasse: Klassenkonto
- Instanzvariable: A und B
- Methode Daten festlegen: Zum Festlegen des Werts fรผr a und b.
- Methode Daten anzeigen: Um die Werte fรผr a und b anzuzeigen.
- Hauptmethode: Hier erstellen wir ein Objekt der Klasse Account und rufen Methoden zum Setzen und Anzeigen von Daten auf.
Den Compiler-Wirrwarr durchschauen
Lasst uns den Code kompilieren und ausfรผhren.
Unsere erwartete Ausgabe fรผr A und B sollte auf die Werte 2 bzw. 3 initialisiert werden.
Aber der Wert ist 0. Warum? Lasst uns der Sache nachgehen.
In der Methode Set data werden die Argumente als a und b deklariert, wรคhrend die Instanzvariablen ebenfalls a und b heiรen.
Wรคhrend der Ausfรผhrung ist der Compiler verwirrt. Er kann nicht entscheiden, ob es sich bei โaโ links vom Zuweisungsoperator um eine Instanzvariable oder eine lokale Variable handelt. Daher wird โaโ beim Aufruf der Methode โset dataโ kein Wert zugewiesen.
Die Lรถsung ist das Schlรผsselwort โthisโ.
Fรผge sowohl โaโ als auch โbโ mit dem Java dieses Schlรผsselwort, gefolgt von einem Punktoperator (.).
Wรคhrend der Codeausfรผhrung wird beim Aufruf der Methode setdata durch ein Objekt das Schlรผsselwort this durch den Objekthandler โobjโ ersetzt. (Siehe Abbildung unten.)
Jetzt weiร der Compiler,
- Das โaโ auf der linken Seite ist eine Instanzvariable.
- Das โaโ auf der rechten Seite ist eine lokale Variable.
Das Variablen werden korrekt initialisiert und die erwartete Ausgabe wird angezeigt.
Wie der Compiler mit mehreren Objekten umgeht
Angenommen, Sie wรคhlen unterschiedliche Namen fรผr Ihre Instanzvariablen und Methodenargumente.
Aber dieses Mal erstellen Sie zwei Objekte der Klasse, die jeweils die Methode โset dataโ aufrufen.
Wie bestimmt der Compiler, ob er mit der Instanzvariable von Objekt 1 oder Objekt 2 arbeiten soll?
Nun die Der Compiler hรคngt implizit an die Instanzvariable mit dem Schlรผsselwort this (siehe Abbildung unten).
Wenn also Objekt 1 die Set-Data-Methode aufruft, wird eine Instanzvariable durch ihre Referenzvariable angehรคngt.
Wรคhrend Objekt 2 die Set-Data-Methode aufruft, wird eine Instanzvariable von Objekt 2 geรคndert.
Der Compiler erledigt das automatisch. Sie mรผssen das Schlรผsselwort `this` nicht explizit hinzufรผgen, es sei denn, eine Ausnahmesituation erfordert dies.
Beispiel: dieses Schlรผsselwort in Java Mit Code
Ejemplo: Um die Verwendung dieses Schlรผsselworts zu erlernen.
Schritt 1) Kopieren Sie den folgenden Code in einen Notizblock.
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(); } }
Schritt 2) Den Code speichern, kompilieren und ausfรผhren.
Schritt 3) Die Werte von a und b werden als Null angezeigt? Um den Fehler zu korrigieren, fรผgen Sie Zeile 6 und 7 mit dem entsprechenden Wert hinzu. fehlen uns die Worte. Stichwort.
this.a =a; this.b =b;
Schritt 4) Speichern, kompilieren und fรผhren Sie den Code aus. Diesmal sind die Werte von a und b auf 2 bzw. 3 gesetzt.
Hรคufig gestellte Fragen
Sehen Sie sich unseren Artikel an Java Interviewfragen: - Zu unseren Stellenangeboten











