Guía de la palabra clave super Java

1. Introducción

En este tutorial rápido, veremos la palabra clave super Java.

En pocas palabras, podemos usar la palabra clave super para acceder a la clase principal.

Exploremos las aplicaciones de la palabra clave principal en el idioma.

2. La súper palabra clave con constructores

Podemos usar super () para llamar al constructor padre predeterminado . Debería ser la primera declaración de un constructor.

En nuestro ejemplo, usamos super (mensaje) con el argumento String :

public class SuperSub extends SuperBase { public SuperSub(String message) { super(message); } }

Creemos una instancia de clase secundaria y veamos qué sucede detrás:

SuperSub child = new SuperSub("message from the child class");

La nueva palabra clave invoca al constructor del SuperSub , que a su vez llama primero al constructor padre y le pasa el argumento String .

3. Acceso a las variables de la clase principal

Creemos una clase padre con la variable de instancia de mensaje :

public class SuperBase { String message = "super class"; }

Ahora, creamos una clase secundaria con la variable del mismo nombre:

public class SuperSub extends SuperBase { String message = "child class"; public void getParentMessage() { System.out.println(super.message); } }

Podemos acceder a la variable principal desde la clase secundaria utilizando la palabra clave super .

4. La súper palabra clave con anulación de método

Antes de continuar, le recomendamos que revise nuestra guía de sustitución de métodos.

Agreguemos un método de instancia a nuestra clase principal:

public class SuperBase { String message = "super class"; public void printMessage() { System.out.println(message); } }

Y anule el método printMessage () en nuestra clase secundaria:

public class SuperSub extends SuperBase { String message = "child class"; public SuperSub() { super.printMessage(); printMessage(); } public void printMessage() { System.out.println(message); } }

Podemos usar super para acceder al método anulado desde la clase secundaria . El super.printMessage () en el constructor llama al método padre desde SuperBase .

5. Conclusión

En este artículo, exploramos la palabra clave súper .

Como de costumbre, el código completo está disponible en Github.