¿Cómo llamar un metodo de la clase hijo en la clase padre?

publicado por: Anonymous

estoy intentando hacer una agenda con GUI en netbeans, sin embargo quiero separar en los métodos toda la programación como tal guardandolos en una subclase del mismo formulario.

Sin embargo cuando mando a llamar el método de la subclase me manda un NPE, no sé si alguien me pueda ayudar les dejo unas imágenes:

Aquí solo mando a llamar a la clase hija:

Casteo a la clase hija:

Y en ésta parte es donde quiero que al dar click me mande a llamar el metodo “prueba” que se encuenta en la clase hija.

introducir la descripción de la imagen aquí

Y esta es la clase hija donde está el metodo:introducir la descripción de la imagen aquí

Espero que me puedan ayudar, intento hacer el GUI un poco más orientado a objetos pero estos errores son los que me marcan:
introducir la descripción de la imagen aquí

solución


Saludos, Kris.

java.lang.StackOverflowError es el resultado de recursión infinita, lo que cuál sucede en tu clase Metodos. Tratas de instanciar un nuevo Metodos, llamando a su vez la clase Agenda (puesto que está extendida), es decir, que pasará por esa instancia infinidad de veces dando como resultado un java.lang.StackOverflowError. Para evitarlo, no extiendas Agenda en la clase Metodos, sino que pásale una referencia.

Puedes intentar realizar algo como esto:

public class Metodos {

    private final Agenda agenda;

    public Metodos(Agenda agenda) {
        this.agenda = agenda;
    }
}

public class Agenda extends javax.swing.JFrame {

    // Declaración de tus variables...
    private Metodos metodos;

    public Agenda() {
        // Instancias otras variables...

        metodos = new Metodos(this);
    }

    // Declaración de más métodos...
}

De esta forma, podrías utilizar todos los métodos o variables de la clase Agenda según lo requieras en la clase Metodos.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *