Heim  >  Artikel  >  Java  >  Warum und wann sollten Sie „super()“ in einem Java-Konstruktor aufrufen?

Warum und wann sollten Sie „super()“ in einem Java-Konstruktor aufrufen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-26 01:54:03360Durchsuche

Why and When Should You Call `super()` in a Java Constructor?

Die Bedeutung des Aufrufs von super() in einem Konstruktor

In Java kommt es beim Erweitern einer übergeordneten Klasse nicht selten zu einem Aufruf zu super() innerhalb des Konstruktors der untergeordneten Klasse. Obwohl es möglich ist, auf Methoden der übergeordneten Klasse zuzugreifen, ohne super() explizit aufzurufen, ist es wichtig, ihren Zweck zu verstehen.

Zweck von super()

Super() Die Methode dient zwei Hauptzwecken:

  1. Aufrufen des Konstruktors der übergeordneten Klasse: Wenn der Konstruktor der übergeordneten Klasse Parameter akzeptiert, können Sie durch den Aufruf von super() mit Argumenten diese Parameter angeben. Dies ist erforderlich, wenn die übergeordnete Klasse keinen Standardkonstruktor ohne Parameter bereitstellt.
  2. Argumente bereitstellen: Auch wenn die übergeordnete Klasse einen Standardkonstruktor hat, liefert der Aufruf von super() mit Argumenten Sie haben eine genauere Kontrolle über die Initialisierung der übergeordneten Klasse. Sie können die Werte ändern, die an den Konstruktor der übergeordneten Klasse übergeben werden.

Impliziter Aufruf von super()

Java ruft implizit den Standardkonstruktor der übergeordneten Klasse auf Klasse (d. h. super()) für jede benutzerdefinierte Klasse, die von einer übergeordneten Klasse erbt. Daher ist ein expliziter Aufruf von super() normalerweise nicht erforderlich.

**Beispiel: Anpassen von JFrame

Das obige ist der detaillierte Inhalt vonWarum und wann sollten Sie „super()“ in einem Java-Konstruktor aufrufen?. 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