"einfache Klassengeschichten" keine Fehler, läuft

Status
Nicht offen für weitere Antworten.

Sponko

Mitglied
Moin zusammen !
Jo, ich soll da mal was für informatik fertig machen, aber irgendwie läufts nicht so ganz und ich habe keine Ahnung warum. Wird ohne Probleme Compiliert, aber irgendwie... nunja. Hat irgendeiner eine Idee, wo das so grob dran liegen könnte, oder in welcher Richtung ich suchen könnte?

Die Klasse MessdatenverwaltungJS soll die einzelnen Objekte der Basisklasse MessdatenJS verwalten und durch ein alpha-numerisches Auswahlmenü bedient werden. In diesem Auswahlmenü hat der Anwender die Möglichkeiten neue Datensätze anzulegen, sich Datensätze anzeigen zu lassen oder das Anwendersystem zu beenden. Im Testlauf zeigt sich aber dass entweder in diesem Auswahlmenü noch Fehler stecken, oder dass die Methoden, die durch das Auswahlmenü aufgerufen werden nicht so funktionieren, wie sie eigendlich sollten. Wird hierbei die Methode „gebeein()“ angewählt passiert nichts. Wird sechs mal hintereinander (Anzahl der Datensätze = 5) die Methode „gebeaus()“ angewählt werden die Attribute ohne Werte ausgegeben. Warum? (Wenns hilft, ich benutze NetBeans 5.5
)
Listing der Basisklasse MessdatenJS
Code:
import java.io.*;
class MessdatenJS
{
String messart;
double identnummer;
double messwert;
String einheit;
String pruefername;
double datum;
int i;
int d;
double w;
String a;
String e;
String n;
int ldf;

public void weisedatenzu()
{
this.messart="Lichtstaerke";
this.identnummer=496738;
this.messwert=123.456;
this.einheit="cd";
this.pruefername="X Y";
this.datum=17042007;
}

public void gebedatenein()
{
    BufferedReader ein=new BufferedReader(new InputStreamReader(System.in));
    try
    {
   System.out.print("Messart                                     :");
    this.messart=ein.readLine(); 
    System.out.print("Identifizierungsnummer          :");
    this.identnummer=Double.valueOf(ein.readLine()).doubleValue();
    System.out.print("Messwert                                  :");
    this.messwert=Double.valueOf(ein.readLine()).doubleValue(); 
    System.out.print("Masseinheit                              :");
    this.einheit=ein.readLine(); 
    System.out.print("Name des Pruefers                   :");
    this.pruefername=ein.readLine(); 
    System.out.print("Datum                                       :");
    this.datum=Double.valueOf(ein.readLine()).doubleValue(); 
    }
    catch (IOException ioe)
    {
        System.out.println(ioe.toString());
    }
}

public MessdatenJS()
{
    gebedatenein();
}

public MessdatenJS(String a, int i, float w, String e, String n, int d)
{
this.messart=a;
this.identnummer=i;
this.messwert=w;
this.einheit=e;
this.pruefername=n;
this.datum=d;
}

public void gebedatenaus()
{
System.out.println("Messart                              :"+this.messart);
System.out.println("Identifizierungsnummer       :"+this.identnummer);
System.out.println("Messwert                            :"+this.messwert);
System.out.println("Einheit                                :"+this.einheit);
System.out.println("Pruefername                       :"+this.pruefername);
System.out.println("Datum                                :"+this.datum);
}

public static void main (String[] args)
{
MessdatenJS pdneuedaten1= new MessdatenJS();
MessdatenJS pdneuedaten2= new MessdatenJS("Strom", 496739, 0123, "mA", "X Y", 14052007);
MessdatenJS pdneuedaten3= new MessdatenJS("Spannung", 496740, 124, "mV", "X Y", 14052007);

System.out.println("\nMessdatenJS");
pdneuedaten1.gebedatenaus();
pdneuedaten2.gebedatenaus();
pdneuedaten3.gebedatenaus();
}
}
[/code]

Listing des "Anwendersystems" MessdatenverwaltungJS
(Die beiden Methoden am Ende erstmal aussen vor lassen, die sind von einer anderen Geschichte und funktionieren wahrscheinlich auch nicht)

Code:
import java.io.*;
public class MessdatenverwaltungJS
{
    private int arrayindex=0;
    MessdatenJS pdneuedaten[]=new MessdatenJS[5];
    int e=0;
    int fdf;
    int ldf;
    int tfdf;
    
    private void waehleAus()
    {
        int e=0;

     BufferedReader menueEin=new BufferedReader(new InputStreamReader(System.in));
     do
     {
    System.out.println("Bitte geben sie ihre Auswahl ein: \n\n");
    System.out.println("Eingabe    = 1");
    System.out.println("Ausgabe   = 3");
    System.out.println("Ende         = 9");
    System.out.print("->");
    try
    {
        e=Integer.valueOf(menueEin.readLine()).intValue();
    }
    catch (IOException ioe)
    {
       System.out.println(ioe.toString());
    }
    switch (e)
    {
        case 1:this.gebeEin();break;
        case 3:this.gebeAus();break;
        case 9:System.exit(0);break;
        default: System.out.println("ungueltige Eingabe");
    }
    }while(e!=9);
}

public static void main(String[] args)
{
    MessdatenverwaltungJS a=new MessdatenverwaltungJS();
    a.waehleAus();
}

private void gebeEin()
{
    this.pdneuedaten[this.arrayindex]=new MessdatenJS();
    this.arrayindex++;
}

private void gebeAus()
{
    for(int k=0;k<this.arrayindex;k++)
    this.pdneuedaten[k].gebedatenaus();
}

public void loescheanstelle()
{
    BufferedReader ein=new BufferedReader(new InputStreamReader(System.in));
    try{
    int ldf = 0;
    System.out.print("Welcher Datensatz soll geloescht werden?");
    this.ldf=Integer.valueOf(ein.readLine()).intValue();
    for(int i=ldf;i>this.arrayindex;i++)
        pdneuedaten[i]=pdneuedaten[i+1];
    }
    catch(IOException ioe)
    {
        System.out.println(ioe.toString());
    }
}
public void fuegeein()
{
    BufferedReader ein=new BufferedReader(new InputStreamReader(System.in));
    try{
    int tfdf=0;
    int fdf=0;
    System.out.print("An welcher Stelle soll ein neuer Datensatz eingefuegt werden?");
    this.fdf=Integer.valueOf(ein.readLine()).intValue();
    this.pdneuedaten[this.tfdf]=new MessdatenJS();
    for(int i=fdf;i<=this.arrayindex;i--)
        pdneuedaten[i-1]=pdneuedaten[i];
    pdneuedaten[tfdf]=pdneuedaten[fdf];
     }
    catch(IOException ioe)
    {
        System.out.println(ioe.toString());
    }
}
}

Wäre nett, wenn mir da einer mal unter die Arme greiffen könnte.
Beste Grüsse, jo!
 

Quaxli

Top Contributor
Zum ersten Programm:

  • setze die Klasse auf public und
    schmeiss' die ganzen this raus

Dann geht's. :wink:

Noch eine Anmerkung zur Mehtoden-Namensgebung. Statt weisedatenzu() wäre weiseDatenZu() eigentlich üblicher.
 

Quaxli

Top Contributor
Zum 2. Teil:

Wenn man im Menü eine 1 für "Eingabe" eingibt, passier nichts, außer daß über die Methode gebeEin() ein Objekt im Array instanziiert wird. Die Mehtode müßte in etwas so aussehen:

Code:
	private void gebeEin() {
		pdneuedaten[arrayindex] = new MessdatenJS();
		arrayindex++;
                fuegeein();
	}

Wobei der Code hier noch nicht so recht passen dürfte, aber Du willst ja selbst noch was lernen ;). Auf jeden Fall legst du in gebeEin() ein Objekt an, ohne diesem Daten zuzuweisen.

Noch ein Tipp, statt:

Code:
	public static void main(String[] args) {
		MessdatenverwaltungJS a = new MessdatenverwaltungJS();
		a.waehleAus();
	}

kannst Du das auch so schreiben:

Code:
	public static void main(String[] args) {
		new MessdatenverwaltungJS().waehleAus();
	}

Denn das Objekt brauchst Du ja nicht unbedingt.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
monsterherz einfache Methode mit Fehler den ich nicht finde Java Basics - Anfänger-Themen 21
I Erste Schritte Einfache Datenbank-Webseite erstellen als Nicht-IT-lerin Java Basics - Anfänger-Themen 24
B Einfache OCR zur Zahlenerkennung? Java Basics - Anfänger-Themen 6
M Einfache Datenfilterung Java Basics - Anfänger-Themen 15
D Beim Programmieren auf die Logisch einfache Lösung kommen. Java Basics - Anfänger-Themen 17
H Einfache Frage zur Punktnotation objektname.methode(wert) Java Basics - Anfänger-Themen 2
B Einfache HSQLDB? (lock acquisition failure) Java Basics - Anfänger-Themen 2
B Threads Thread sleep() Method einfache Frage Java Basics - Anfänger-Themen 8
O Ganz einfache Frage - Array Java Basics - Anfänger-Themen 5
E Einfache Java Verschlüsselung Java Basics - Anfänger-Themen 4
J Einfache Frage zu "null" Java Basics - Anfänger-Themen 2
J Einfache pub/sub Lösung mit ausführlicher Doku Java Basics - Anfänger-Themen 5
R Gibt es Eine einfache Programierung dieser Methoden Java Basics - Anfänger-Themen 8
K einfache Kombinatorik Java Basics - Anfänger-Themen 4
M Erste Schritte Einfache Aufzugssteuerung programmieren - Anfänger Java Basics - Anfänger-Themen 2
D Eine einfache Verschlüsselung schreiben Java Basics - Anfänger-Themen 3
B in einem abstrakten Set ,Elemente einer einfache verkettete List epeichern Java Basics - Anfänger-Themen 13
X Einfache Frage; wie soll ich die spezielle float var speichern? Java Basics - Anfänger-Themen 2
J Einfache einbindung eines Bildes in ein Applet Java Basics - Anfänger-Themen 4
D Klassen Gesucht: Einfache Beispiel-Klasse für einen Datentyp Java Basics - Anfänger-Themen 7
K Möglichkeiten um eine einfache Animation darzustellen Java Basics - Anfänger-Themen 7
L Einfache Lineare Suche Java Basics - Anfänger-Themen 7
P Erste Schritte Einfache For Schleife Java Basics - Anfänger-Themen 10
M Einfache Java Operation, cheggs net Java Basics - Anfänger-Themen 2
V Erste Schritte Einfache Rechnung mit Exponenten Java Basics - Anfänger-Themen 3
G einfache Leet-Übersetzung implementieren und benutzen Java Basics - Anfänger-Themen 14
M Einfache und Doppelte Operatoren Java Basics - Anfänger-Themen 3
E Einfache For-Schleife macht nicht was sie soll Java Basics - Anfänger-Themen 2
shiroX OOP Türme von Hanoi - einfache grafische Ausgabe Java Basics - Anfänger-Themen 2
C Extrem einfache Aufgabe falsch beantwortet :$ Java Basics - Anfänger-Themen 6
Z Super einfache Frage For-Schleife im Detail Java Basics - Anfänger-Themen 3
N Potenzierung durch einfache Operatoren Java Basics - Anfänger-Themen 13
H Einfacher Editor, Einfache Handelsanweisungen Java Basics - Anfänger-Themen 2
H Sehr einfache Java-Programme Java Basics - Anfänger-Themen 24
H Einfache Client/Server-Kommunikation Java Basics - Anfänger-Themen 16
-horn- Einfache graphische Darstellung von 3D Koordinaten für Flugbahnen? Java Basics - Anfänger-Themen 4
B Einfache jsp Seite darstellen Java Basics - Anfänger-Themen 9
G Einfache if-Abfrage der Main-Argumente Java Basics - Anfänger-Themen 3
J Einfache Designfrage Java Basics - Anfänger-Themen 4
R Methoden Einfache Loops? Java Basics - Anfänger-Themen 8
E einfache Frage zu private Java Basics - Anfänger-Themen 26
R Sehr einfache möglichkeit ArrayList oder Array zu initialisieren? Java Basics - Anfänger-Themen 8
F Einfache Klassen für Datum und Zeit Java Basics - Anfänger-Themen 3
Spin Einfache Anfänger Frage setVisible von Panels Java Basics - Anfänger-Themen 5
E OOP einfache Array Aufgabe mit jUnit Java Basics - Anfänger-Themen 5
D einfache Quizfrage programmieren Java Basics - Anfänger-Themen 11
B Einfache Applets für Webseite Java Basics - Anfänger-Themen 10
K Einfache Rekursion - Wert wird nicht in Variable gespeichert Java Basics - Anfänger-Themen 7
U Einfache Aufgabe Java Basics - Anfänger-Themen 5
E Einfache Frage zur Parameterübergabe in Methoden Java Basics - Anfänger-Themen 8
M einfache Übungsaufgaben gesucht Java Basics - Anfänger-Themen 7
M Einfache Rechnung(R=U/I) Java Basics - Anfänger-Themen 12
D Wohl eine einfache Frage... Java Basics - Anfänger-Themen 2
W Einfache Passwortabfrage funktioniert nicht Java Basics - Anfänger-Themen 3
P einfache GUI-Elemente Java Basics - Anfänger-Themen 10
F Vererbung (einfache Frage) Java Basics - Anfänger-Themen 5
S 2 Einfache Fragen (Exception Breakpoint, Konstruktor) Java Basics - Anfänger-Themen 4
L einfache Klasse erstellen Java Basics - Anfänger-Themen 16
M kleine und einfache Verständnisfrage Java Basics - Anfänger-Themen 3
P Einfache Bedingung (?) in Java Java Basics - Anfänger-Themen 3
W Einfache Rekursion Java Basics - Anfänger-Themen 14
T Einfache Textausgabe .java unter OS X Java Basics - Anfänger-Themen 13
B einfache Rekursion Java Basics - Anfänger-Themen 9
A [Hilfe] einfache Aufgabe Java Basics - Anfänger-Themen 26
A Einfache java Verschlüsselung HILFE Java Basics - Anfänger-Themen 3
M einfache java application Java Basics - Anfänger-Themen 4
S Kann einfache Texteingabe nicht auswerten! Java Basics - Anfänger-Themen 3
M einfache frage zum Jdk-Compiler Java Basics - Anfänger-Themen 3
Spin einfache Frage zu Klassen Java Basics - Anfänger-Themen 12
J einfache Tastendrücke in einem JFrame abfragen Java Basics - Anfänger-Themen 2
C "einfache" If-Abfrage Java Basics - Anfänger-Themen 15
H Einfache Ausgabe eines Arrays in einen File Java Basics - Anfänger-Themen 8
F Einfache Liste hinten was einfügen Java Basics - Anfänger-Themen 3
L Einfache Umrechnung Java Basics - Anfänger-Themen 2
D Einfache Funktion zum kaufmännischen runden Java Basics - Anfänger-Themen 8
K einfache Multiplikation Java Basics - Anfänger-Themen 6
S Einfache Rechnung mit Schleife Java Basics - Anfänger-Themen 10
G einfache Swing-GUI Java Basics - Anfänger-Themen 3
F Einfache Tastatureingabe Java Basics - Anfänger-Themen 2
L [gelöst] Einfache Aufgabe, läuft aber nicht. Java Basics - Anfänger-Themen 8
R Einfache MVC-Uhr. MVC richtig umgesetzt? [Überarbeitet] Java Basics - Anfänger-Themen 5
A Einfache Frage zur Mehrfachvererbung Java Basics - Anfänger-Themen 3
G Einfache Berechnung liefert falsches Ergebnis Java Basics - Anfänger-Themen 2
J eine einfache liste Java Basics - Anfänger-Themen 17
D Suche einfache Übungsaufgaben für den JavaCreator! Java Basics - Anfänger-Themen 5
R Einfache Messagebox Java Basics - Anfänger-Themen 9
N einfache Adressdatenbank in Textdatei Java Basics - Anfänger-Themen 8
I einfache Wiedergabe Java Basics - Anfänger-Themen 2
B Warum hat dieser einfache Algorithmus lineare Laufzeit? Java Basics - Anfänger-Themen 3
U "Einfache Verschlüsselung" Java Basics - Anfänger-Themen 17
K einfache Umfang und Flächenberechnung mit interfaces Java Basics - Anfänger-Themen 3
M Einfache HTML Mail versenden , suche Beispiel Java Basics - Anfänger-Themen 5
L MVC-einfache frage Java Basics - Anfänger-Themen 13
M einfache schleife Java Basics - Anfänger-Themen 7
M Einfache Schleife Java Basics - Anfänger-Themen 4
krgewb Keine richtige Doku Java Basics - Anfänger-Themen 5
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
G Endlosschleife keine Rückgabe Java Basics - Anfänger-Themen 36
Nooobi Regex und .matches() geben keine Ausnahme Java Basics - Anfänger-Themen 10
berserkerdq2 Warum ist das keine Referenzkopie mehr? Java Basics - Anfänger-Themen 26

Ähnliche Java Themen

Neue Themen


Oben