java, get-set-Methoden

Diese Frage wurde vorher gefragt, aber auch nach der Lektüre:

Java "Get" und "Set" Methoden

Java Get/Set-Methode gibt null zurück

Mehr ich verstehe immer noch nicht, wie mein problem zu lösen.

Beim Zugriff auf Variablen in einer Klasse mit get-Methoden aus einer anderen Klasse, die ich erhalten den Wert null.

Wie erhalte ich meine richtigen Werte anstelle von null?


Dies ist die Klasse, wo ich versuchen werde meine Variablen AUS (nicht alles inklusive).

public class RLS_character_panel extends javax.swing.JPanel implements ActionListener, ItemListener { 

    private String name1 = "hello"; 

    public String getName1() { 
        return name1; 
    } 

    public void setName1(String name1) { 
        this.name1 = name1; 
    } 

} 

Dies ist die Klasse, wo ich versuche, die Werte ZU. Diese Klasse erweitert JFrame, so dass ich hinzufügen kann, ein JPanel, das zeigt die variable. (das JPanel ist noch eine andere Klasse genannt: RLS_strid_panel , die Hinzugefügt wird, die auf diesem frame).

public class RLS_strid_java extends JFrame { 

    RLS_character_panel test = new RLS_character_panel(); 

    String name1 = test.getName1(); 

    RLS_strid_panel p = new RLS_strid_panel(namn1); 

    //constructor
    public RLS_strid_java(String titel) { 
        super(titel); 
        this.setSize(1000, 772); 
        this.setVisible(true); 
        this.setResizable(false); 
        this.add(p); 
    } 
}

dem Jpanel Zeigt null.

  • Wenn Sie Schritt für Schritt durch den code in Ihrem debugger, können Sie sehen, welcher Wert ist null?
  • Oh, Mann, die Namensgebung! Respektieren Sie die Java-Namenskonventionen, und geben Sie sinnvolle Namen ro Ihre Klassen. Und zeigen Sie uns die code-Anzeige des Wertes.
  • Wie werden Sie den Bau der "äußeren" RLS_strid_java? Der "Schaltschrank" p ist, sieht gut aus, aber wie rufst du den Konstruktor von RLS_strid_java von außerhalb der Klasse?
  • Die code-Anzeige auf den Wert : public RLS_strid_panel(String namn1 ) { initComponents(); namn11_lbl.setText(namn1); }
  • Sollten Sie Ihren stacktrace.
Schreibe einen Kommentar