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]
Listing des "Anwendersystems" MessdatenverwaltungJS
(Die beiden Methoden am Ende erstmal aussen vor lassen, die sind von einer anderen Geschichte und funktionieren wahrscheinlich auch nicht)
Wäre nett, wenn mir da einer mal unter die Arme greiffen könnte.
Beste Grüsse, jo!
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();
}
}
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!