Wie verwende ich Methoden aus zwei Klassen in Java?

Ich habe mich umgesehen und nur eine Antwort gefunden, die mir zumindest nicht klar genug war.

Ich erstelle eine sehr einfache Chat-Anwendung mit einer grafischen Benutzeroberfläche und habe die grafische Benutzeroberfläche von den Verbindungselementen getrennt. Jetzt muss ich eine Methode von der GUI in der Serverklasse aufrufen und umgekehrt. Aber ich verstehe nicht ganz, wie es geht (auch mit "diesem"). So sieht ein Teil des Codes aus (dies ist eine Klasse mit dem Namen server_frame):

textField.addActionListener(
            new ActionListener() {

                public void actionPerformed(ActionEvent arg0) {
                    try {
                        srv.sendData(arg0.getActionCommand());
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                    textField.setText("");
                }
            }
            );

Dies ist ein Code aus server_frame, srv ist ein Objekt aus der anderen Klasse (server), die die sendData-Methode enthält, und ich habe es wahrscheinlich nicht richtig definiert, sodass hoffentlich jemand eine Definition davon vornehmen kann.

Auf der anderen Seite enthält der Klassenserver, von dem das Objekt srv erstellt wurde, die Methode JTextArea displayArea von server_frame in folgendem Code:

private void displayMessage(final String message){
    sf = new server_frame();
    SwingUtilities.invokeLater(new Runnable(){

        public void run(){
            sf.displayArea.append(message);
        }
    }
            );
}

Wieder einmal ist sf ein Objekt aus server_frame und wieder einmal wahrscheinlich falsch definiert :)

Hoffentlich war das klar genug, leider habe ich die Suche versucht, aber es hat mir nicht die gewünschten Ergebnisse gebracht. Wenn Sie weitere Informationen benötigen, füge ich diese gerne hinzu!

Danke fürs Lesen,

Mr.P.

P.S. Bitte haben Sie nichts dagegen, wenn ich Terminologie-Pannen gemacht habe, ich bin immer noch ziemlich neu in Java und bin offen für Korrekturen!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage