Variablen werden leer ausgelesen (Wert wurde zugewiesen)

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo!

Ich bin neu hier und habe mir die letzten Eintraege hier durchgelesen, fand jedoch keine Loesung zu meinem Problem.
Ich benutze den NetBeans v3.5.1 unter SuSE 9.0 und bin ein Anfaenger in Sachen Java.

ich habe eine Startklasse Oberflaeche.java, in der auch das Aussehen der Oberflaeche enthalten ist und ein Package Eingabe.java, in der ich die groben Programmabfragen und Funktionen auslagern moechte.

Ich poste mal den meiner Meinung nach relevanten Inhalt aus der Klasse Oberflaeche.java:
Code:
    private void btErzeugenActionPerformed(java.awt.event.ActionEvent evt) {
        Eingabe objekt1 = new Eingabe();
        
        System.out.println(objekt1.objektAusgeben());
    }
    
    private void btAufschlagActionPerformed(java.awt.event.ActionEvent evt) {
        Eingabe objekt1 = new Eingabe();
        
        objekt1.teilAufschlag(tfEingabe.getText());
    }
    
    private void btGrundgehaltActionPerformed(java.awt.event.ActionEvent evt) {
        Eingabe objekt1 = new Eingabe();
        
        objekt1.teilGehalt(tfEingabe.getText());
    }
    
    private void btNachnameActionPerformed(java.awt.event.ActionEvent evt) {
        Eingabe objekt1 = new Eingabe();
        
        objekt1.teilNachname(tfEingabe.getText());
    }

Und hier der Code vom Paket Eingabe.java:
Code:
package Ausgelagert;

public class Eingabe {
    String nachname;
    double gehalt, aufschlag;
    
    public void teilNachname(String textfeld) {
        nachname = textfeld;
        System.out.println("Nachname:  " + nachname);
    }
    public void teilGehalt(String textfeld) {
        gehalt = Double.parseDouble(textfeld);
        System.out.println("Gehalt:    " + gehalt);
    }
    public void teilAufschlag(String textfeld) {
        aufschlag = Double.parseDouble(textfeld);
        System.out.println("Aufschlag: " + aufschlag);
    }
    
    public String objektAusgeben() {
        return (nachname + gehalt + aufschlag);
    }
    
}

Wie ihr sicher seht, wird nur ein Textfeld verwendet (tfEingabe) in dem durch drei Buttons (btAufschlag, btGrundgehalt, btNachname) auch drei Werte gespeichert werden (aufschlag, gehalt, nachname). Abgerufen sollen die Inhalte ueber den Button btErzeugen.
Jedoch klappt das nicht, als Rückgabewert erhalte ich sozusagen leere Variablen (also 0.0 bei Double und null beim String)!
Ich habe keine Ahnung, wo hier das Problem liegt - vielleicht an der komplizierten Objektgeschichte (objekt1)? Ich habe jedoch keinen anderen Weg gefunden, um meine Eingaben an eine andere Klasse (bzw. Methode?) zu uebergeben.

Wie kann ich die abgespeicherten Variablen denn aufrufen in der Methode btErzeugen...? Oder mache ich irgendwo einen Kardinalfehler?

Danke im voraus! :)

Gruesse, Robert V.
 
R

Roar

Gast
natürlich erhältst du null, weil du ein neues objekt Eingabe erzeugst, und die variablen nicht instantiiert sind.
was soll das überhaupt bringen mit der Klasse eingabe???
wieder sowas typisches.. liegt nur an deiner IDE ( :lol: )
is dir wenigstens klar wo dein fehler liegt? mach die klasse statisch oder arbeite mit nur einem objekt eingabe, oder speichere die daten direkt in der oberflaeche.java
 
B

Beni

Gast
Das Problem sind diese Zeilen: Eingabe objekt1 = new Eingabe();

1.Wenn du so etwas hast:
Code:
public void blabla(){
  Eingabe x = new Eingabe();
  x.teilGehalt( "123" );
}
Dann existiert dieses Eingabe x nur innerhalb der Methode blabla().
Jede Variable existiert nur in dem Block (geschweifte Klammern {} ) in dem sie deklariert wurde.

2. mit new Eingabe() erzeugst du ein neues Objekt vom Typ "Eingabe". Dieses Objekt hat keine Verbindung mit anderen Instanzen von "Eingabe".

Schau mal:
Code:
public void test(){
  Eingabe a = new Eingabe();
  Eingabe b = new Eingabe();

  a.teilGehalt( "123" );
  b.teilGehalt( "456" );

  System.out.println( a.objektAusgeben() );
  System.out.println( b.objektAusgeben() );
}
a und b sind unabhängig. Beides sind verschiedene Eingaben, die nicht voneinander wissen.


Was Du machen musst: Du musst dein Eingabe als Instanzvariable anlegen, und das geht so:

Code:
public void Oberflaeche{
    Eingabe objekt1 = new Eingabe();

    ... // Konstruktor, andere Variablen, usw.

    private void btErzeugenActionPerformed(java.awt.event.ActionEvent evt) {
        System.out.println(objekt1.objektAusgeben());
    }
   
    private void btAufschlagActionPerformed(java.awt.event.ActionEvent evt) {
        objekt1.teilAufschlag(tfEingabe.getText());
    }

     ... // der Rest
}


@Roar
Das hat nicht sehr viel mit der IDE zu tun. Mit einem Debugger würde man allerdings sehr gut sehen, wieso es nicht funktioniert. 8)
 
R

Roar

Gast
grr das war ja auch nur ein scherz :twisted: na, geschaltet? :D
und debugger sind was für arme leute, die zu faul sind oder es nicht können ihre dummen fehler zu suchen :lol: :wink:
 
B

Beni

Gast
protestier.gif

Ein Debugger ist was für Leute, die komplizierte Sachen machen (oder in ein Programm reingucken wollen).

Aber ich glaube, das wird langsam
ot.gif
.

Wir können in der Plauderecke mal eine Schlammschlacht machen, wenn Du willst :wink:.
 
G

Guest

Gast
Wow! :shock: :D

Vielen, vielen Dank fuer die schnelle und wirklich nuetzliche Hilfe!
Ich habe bemerkt, dass das Paket ueberfluessig ist und auch kapiert, dass das Objekt "aussen" erzeugt werden muss!
Alles laeuft nun (mehr oder weniger) nach Plan! Danke! :)

[schild=1 fontcolor=000000 shadowcolor=C0C0C0 shieldshadow=1]Super Board![/schild]

Robert V.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Interface Variablen-Inhalte werden nicht übergeben Java Basics - Anfänger-Themen 3
S try-catch - Variablen werden nicht an return übergeben Java Basics - Anfänger-Themen 3
C Methodenaufruf mit Variablen die gesetzt werden Java Basics - Anfänger-Themen 10
P Warum werden die Variablen nicht gespeichert? Java Basics - Anfänger-Themen 10
M Variablen Werte werden nicht übernommen Java Basics - Anfänger-Themen 4
M Globale Variablen werden durch KeyListener nicht aktualisier Java Basics - Anfänger-Themen 10
O Welcher Object-Lock-Pool bei static Variablen? Java Basics - Anfänger-Themen 3
T variablen klassen übergreifend Java Basics - Anfänger-Themen 12
T Variablen Java Basics - Anfänger-Themen 1
N Verständnis Frage zu Variablen Java Basics - Anfänger-Themen 3
M Aufsummieren von variablen Wertegrößen Java Basics - Anfänger-Themen 17
M Mehrere Daten/ Variablen Speichern Java Basics - Anfänger-Themen 9
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
ashi Variablen aufrufen Java Basics - Anfänger-Themen 17
U Warum kann ich, auf private Variablen zugreifen, wenn ich ein Objekt in der Klasse, die private Variablen hat erstelle und dort drauf zugreifen will? Java Basics - Anfänger-Themen 7
B Konkatenieren eines Strings und inkremtierenden Zahl zu einer INT Variablen Java Basics - Anfänger-Themen 7
A 2 Strings vergleichen in einer methode wenn man mit Globalen variablen arbeitet Java Basics - Anfänger-Themen 12
C Konstruktoren und Variablen Java Basics - Anfänger-Themen 42
F Auf Variablen eines Konstruktors zugreifen Java Basics - Anfänger-Themen 4
N Variable aus anderen Variablen in statischer Klasse berechnen/abspeichern? Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
M Warum dürfen Objekte einer Klasse auf statische Variablen dieser Klasse referenzieren? Java Basics - Anfänger-Themen 10
B Variablen Variablen übertragen ohne Klassen Java Basics - Anfänger-Themen 5
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
T Java Swing - Dreieck zeichnen mit verschiedenen Variablen Java Basics - Anfänger-Themen 8
Arif Vererbung Methodenvererbung mit finalen Variablen Java Basics - Anfänger-Themen 1
M Wie kann ich ein Objekt erstellen, wenn sich der Klassenname in einer Variablen befindet? Java Basics - Anfänger-Themen 10
S Variablen Variablen in einer Schleife erstellen lassen Java Basics - Anfänger-Themen 11
J Ich brauche Hilfe bei einem Code (Variablen speichern) Java Basics - Anfänger-Themen 29
F Variablen Werte einer Klasse überschreiben Java Basics - Anfänger-Themen 4
N Speichern von Werten in Variablen nach Schließen des Programms Java Basics - Anfänger-Themen 3
J Frage dazu Variablen klassenübergreifend zu verändern Java Basics - Anfänger-Themen 22
M Java Instanz-Variablen ? Java Basics - Anfänger-Themen 3
B Variablen von Methoden übertragen Java Basics - Anfänger-Themen 2
M Variablen umbenennen Java Basics - Anfänger-Themen 1
T Körper Brechnung - Lokale Variablen in Methoden übergeben Java Basics - Anfänger-Themen 10
P Zugriff auf Variablen anderer Klassen in Greenfoot Java Basics - Anfänger-Themen 1
mars90 Fehler in der Variablen Deklaration Java Basics - Anfänger-Themen 8
E Variablen in formatierter Ausgabe Java Basics - Anfänger-Themen 15
V Schleife für das Einlesen von Werten für int Variablen, die Bestandteil von Arrays sein sollen Java Basics - Anfänger-Themen 16
M Komisches Verhalten der Variablen Java Basics - Anfänger-Themen 6
H Variablen Multiplikation einer inkrementierten Variablen Java Basics - Anfänger-Themen 5
scratchy1 Variablen vertauschen wenn Bedingung "umgedreht" wird Java Basics - Anfänger-Themen 40
J Variablen mit einer anderen Klasse bekannt machen Java Basics - Anfänger-Themen 7
C Methoden Problem beim Speichern von Variablen Java Basics - Anfänger-Themen 1
A Übergreifende Variablen Java Basics - Anfänger-Themen 17
A Variablen Verständnisfrage bzgl. Variablen/Referenzen Java Basics - Anfänger-Themen 3
H Variablen Methode zum Abfragen von Variablen aus Subklassen Java Basics - Anfänger-Themen 9
P Variablen Variablen voneinander abhängig Java Basics - Anfänger-Themen 54
F Liste nach einer Variablen sortieren Java Basics - Anfänger-Themen 6
L Variablen in anderen Klassen nutzen Java Basics - Anfänger-Themen 6
M For-Schleife durch zwei versch. Variablen begrenzen Java Basics - Anfänger-Themen 27
J Klassen Variablen in andere Klassen oder Methoden übernehmen Java Basics - Anfänger-Themen 1
P Liste auslesen und in Variablen speichern Java Basics - Anfänger-Themen 7
temi Redundante Variablen Java Basics - Anfänger-Themen 29
Aprendiendo Zweifel mit versteckter Variablen Java Basics - Anfänger-Themen 16
L Variablen einmal nur zu weisen Java Basics - Anfänger-Themen 62
D Statische Variablen/Methoden Java Basics - Anfänger-Themen 3
R Abfrage von Variablen in Unterklassen einer ArrayList Java Basics - Anfänger-Themen 9
M Listener für Button - Wert von Variablen verändern Java Basics - Anfänger-Themen 14
S Vererbung Variablen klassenübergreifend nutzen Java Basics - Anfänger-Themen 42
R Auf Variablen einer anderen Klasse zugreifen? Java Basics - Anfänger-Themen 1
D Fehlermeldung obwohl Variablen bereits deklariert sind? Java Basics - Anfänger-Themen 14
E 2 Probleme - Datum & private finale Variablen Java Basics - Anfänger-Themen 5
Aruetiise Variablen JFrame und Variablen Java Basics - Anfänger-Themen 3
L Variablen dekleration + reset Java Basics - Anfänger-Themen 16
T Übernahme einer Variablen im ActionListener/ActionEvent Java Basics - Anfänger-Themen 2
D Kapselung final Variablen mit Getter? Java Basics - Anfänger-Themen 2
C Variablen von einem JFrame in einen anderen übertragen Java Basics - Anfänger-Themen 3
C Variablen in Schleifen außerhalb verwenden Java Basics - Anfänger-Themen 2
S Variablen Flexible Variablen Namen Java Basics - Anfänger-Themen 3
R Erste Schritte 3 Variablen hochzählen lassen Java Basics - Anfänger-Themen 1
RowdyN Variablen Variablen beliebig benennen? Java Basics - Anfänger-Themen 6
S OOP Variablen zwischen mehreren Klassen Java Basics - Anfänger-Themen 11
T Koordinatensystem zeichnen - Variablen merken? Quadratische Funktion zeichnen? Java Basics - Anfänger-Themen 5
H Variablen einer Schleife zwischenspeichern Java Basics - Anfänger-Themen 2
P Klassen Variablen von einer Klasse zur anderen Java Basics - Anfänger-Themen 5
H Objekt überschreibt Variablen vorheriger Objekte Java Basics - Anfänger-Themen 2
P Variablen in Excel speichern Java Basics - Anfänger-Themen 6
S PHP Aufruf mit mehreren Variablen Java Basics - Anfänger-Themen 2
F Variablen unterschiedlicher Datentypen Java Basics - Anfänger-Themen 6
S ActionListener und Statische Variablen Java Basics - Anfänger-Themen 4
Arif Vererbung Vererbung Variablen überschreiben Java Basics - Anfänger-Themen 1
L Vergleich zweier Variablen, mit Abweichung Java Basics - Anfänger-Themen 3
P Variablen einer Methode in andere Method übergeben Java Basics - Anfänger-Themen 6
G Variablen Verwendung von Variablen in anderer Klasse Java Basics - Anfänger-Themen 6
P Textfelder in Variablen speichern Java Basics - Anfänger-Themen 13
K arraygröße durch variablen Konstruktor? Java Basics - Anfänger-Themen 7
J Vererbung Variablen aus Superklasse übernehmen Java Basics - Anfänger-Themen 2
L Variablen aus TXT Datei auslesen und vergleichen. Java Basics - Anfänger-Themen 5
K Welchen Typ haben Variablen in Default-Methoden und in statischen Methoden in Schnittstellen? Java Basics - Anfänger-Themen 4
K Wieso muss man finale statische Variablen sofort oder eben im Konstruktor initialisieren? Java Basics - Anfänger-Themen 2
L zwei Variablen gleichzeitig übergeben Java Basics - Anfänger-Themen 6
J Vererbung privater Variablen Java Basics - Anfänger-Themen 7
D Klassen Verhalten von Klassenvererbung bei Variablen Java Basics - Anfänger-Themen 1
G Alle Objekte und Variablen automatisch ausgeben Java Basics - Anfänger-Themen 7
S OOP Werte von Vektoren mit 3 Variablen ausgeben lassen Java Basics - Anfänger-Themen 3
A Variablen aus einer Schleife gezielt auslesen Java Basics - Anfänger-Themen 11
A Methoden Zugriff auf eingelesene Variablen in der main Methode (ohne Änderung der Parameterliste) Java Basics - Anfänger-Themen 4
K Enigma, variablen übernehmen Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben