Warum wird die super()-Methode in einem Konstruktor aufgerufen?
In Java ermöglicht die Konstruktorüberladung, dass Klassen mehrere Konstruktoren mit unterschiedlichen Parametern haben Listen. Wenn ein Konstruktor ohne explizite Parameter aufgerufen wird, ruft er implizit den Standardkonstruktor (parameterlos) der übergeordneten Klasse auf. In bestimmten Szenarien sind jedoch explizite Aufrufe von super() erforderlich.
Impliziter Aufruf von super()
Alle Java-Klassen erben von der Object-Klasse und daher erbt seinen Standardkonstruktor. Das bedeutet, dass die JVM auch dann super() implizit ohne Argumente aufruft, wenn Sie super() in Ihrem Konstruktor nicht explizit aufrufen.
Expliziter Aufruf von super() mit Parametern
Wenn die übergeordnete Klasse Konstruktoren mit Parametern definiert, müssen Sie super() explizit mit den entsprechenden Argumenten aufrufen, um die übergeordnete Klasse mit bestimmten Werten zu initialisieren. Wenn die übergeordnete Klasse beispielsweise einen Konstruktor hat, der einen String akzeptiert, würden Sie ihn mit super("parameter") initialisieren.
**Beispiel: Controlling Frame
Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen, die das Frageformat und relevante Schlüsselwörter enthalten: * **Wann und warum rufen wir „super()' in einem Java-Konstruktor auf?** * **Warum ist „super()' in Java Constructo notwendig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!