Heim  >  Artikel  >  Java  >  Was sind die Java-Schlüsselwörter Super und This? Was ist der Unterschied?

Was sind die Java-Schlüsselwörter Super und This? Was ist der Unterschied?

青灯夜游
青灯夜游Original
2018-11-21 14:08:475725Durchsuche

Der Inhalt dieses Artikels soll Ihnen vorstellen, was die Java-Schlüsselwörter super und das sind? Was ist der Unterschied? Lassen Sie alle die Rolle der Schlüsselwörter super und this, den Unterschied zwischen den Schlüsselwörtern super und this und eine kurze Einführung in superL() und this() verstehen. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird Ihnen hilfreich sein.

Was sind die Schlüsselwörter super und das? Was ist der Unterschied?

dieses Schlüsselwort

dies ist ein reserviertes Schlüsselwort in Java, d. h. wir können es nicht als Bezeichner verwenden.

dies: Stellt das aktuelle Objekt dar, das den Zugriff auf die Methoden/Eigenschaften der aktuellen Klasse ermöglicht (einschließlich ihrer eigenen privaten Methoden/Eigenschaften).

Einfach ausgedrückt: Sie können auf alle Eigenschaften und Methoden in der aktuellen Klasse sowie auf Eigenschaften und Methoden zugreifen und diese bedienen, die von der übergeordneten Klasse geerbt wurden und durch den Zugriffsmodifikator zugelassen werden.

Beispiel:

class RR { 
	int a = 10; 
	static int b = 20; 

	void GFG() { 
		this.a = 100; 
		this.b = 600; 
		System.out.println(a); 
		System.out.println(b); 
	} 

	public static void main(String[] args) { 
		new RR().GFG(); 
	} 
}

Ergebnis ausführen:

Was sind die Java-Schlüsselwörter Super und This? Was ist der Unterschied?

Hinweis: Dies kann nur in nicht statischen Methoden einer Klasse verwendet werden, statisch Methoden und This dürfen nicht in statischen Codeblöcken vorkommen.

Super-Schlüsselwort

Super ist ein reserviertes Schlüsselwort in Java, d. h. wir können es nicht als Bezeichner verwenden.

super stellt den Objektteil der übergeordneten Klasse der aktuellen Objektklasse dar und wird zum Verweisen auf abgeschirmte Mitgliedsvariablen und Mitgliedsmethoden verwendet. Ermöglicht den Zugriff auf öffentliche (geschützte) Methoden oder Eigenschaften, jedoch nicht auf die privaten Methoden oder Eigenschaften des übergeordneten Elements.

super kann nicht auf die Eigenschaften und Methoden dieser Klasse einwirken, die durch den Zugriffsmodifikator der übergeordneten Klasse zugelassen sind, und kann nur verwendet werden, wenn der Effekt zuvor vorliegt overridden wird in dieser Klasse aufgerufen.

Der Zweck der Verwendung von Super besteht darin, auf die blockierten Mitglieder in der direkten übergeordneten Klasse zuzugreifen. Beachten Sie, dass es sich um die direkte übergeordnete Klasse handelt (dh die nächste übergeordnete Klasse über der Klasse).

Beispiel:

class Parent { 
	// instance variable 
	int a = 10; 

	// static variable 
	static int b = 20; 
} 
class Base extends Parent { 
	void rr() { 
		System.out.println(super.a); 
		System.out.println(super.b); 
	} 

	public static void main(String[] args) { 
		new Base().rr(); 
	} 
}

Ausgabe ausführen:

Was sind die Java-Schlüsselwörter Super und This? Was ist der Unterschied?

Zusammenfassung der Unterschiede:

this Schlüsselwort: Stellt das aktuelle Objekt dar, dh das aktuelle Klassenobjekt, und ruft die aktuellen Klassenmitglieder (Variablen und Methoden) auf.

Super-Schlüsselwort: Stellt die übergeordnete Klasse der aktuellen Klasse dar und ruft die Mitglieder (Variablen) auf und Methoden) der übergeordneten Klasse ;

Dies hat einen größeren Anwendungsbereich als super.

Eine kurze Einführung in this() und super()

1 This() und super() können nur für In verwendet werden die Konstruktormethode

2. Wenn in den Klammern formale Parameter stehen, wird der Konstruktor dieser Klasse mit den entsprechenden Parametern aufgerufen Die übergeordnete Klasse

3 kann nur im ersten Satz der Konstruktormethode

4 geschrieben werden. Super() muss nicht geschrieben werden , die super()-Methode wird standardmäßig aufgerufen,

5. this() und super() können nicht nebeneinander existieren, es kann nur einer von ihnen verwendet werden.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Empfohlene weitere verwandte Video-Tutorials: Java-Tutorial!

Das obige ist der detaillierte Inhalt vonWas sind die Java-Schlüsselwörter Super und This? Was ist der Unterschied?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn