Hallo, ich habe ein Problem mit einer Aufgabe. Den Code habe ich bereits, zu meinem besten Können, geschrieben. Kompilieren lässt er sich, bei der Ausführung gibt es jedoch Probleme. Ich werde hier die Aufgabenstellung und meinen Code einfügen:
Implementieren Sie eine Klasse Student. Fügen Sie die Attribute nachname und vorname vom Typ String und matnr vom Typ int hinzu. In dieser Aufgabe sollen die Attribute von außen sichtbar sein.
Testen Sie nun diese Klasse, indem Sie eine weitere Klasse Tub schreiben, die über eine main-Methode verfügt. Gehen Sie dazu wie folgt vor:
• Definieren Sie eine Variable m, welche die Anzahl der Studenten in einem Array repräsentiert. m soll über die Terminal-Klasse eingelesen werden (public static int readInt()).
• Definieren Sie ein Array vom Typ Student[] mit der Länge m.
• Initialisieren Sie nun in einer geeigneten Schleife die Studenten im Array. Die Attribute eines jeden Studenten sollen mithilfe von Benutzereingaben initialisiert werden. Benutzen Sie auch dafür die TerminalKlasse. Führen Sie den Benutzer durch das Programm mithilfe von Konsolenausgaben.
• Geben Sie anschließend die Daten aller Studenten mithilfe einer weiteren Schleife auf der Konsole aus.
Bei der Ausführung wird zunächst nach m gefragt, sobald ich dafür eine Zahl eingebe, endet das Programm und ich werde auf der Konsole nach einer neuen Eingabe gefragt..
Hier mein Code:
[CODE lang="java" title="Code"]public class Tub {
public static void main(String[] args) {
int m = Terminal.readInt();
Student[] SdtArray = new Student [m];
for(int i=0; i>m; i++){
SdtArray = new Student();
String x = Terminal.askString("Wie lautet Ihr Nachname?");
SdtArray.nachname = x;
String y = Terminal.askString("Wie lautet Ihr Vorname?");
SdtArray.vorname = y;
int z = Terminal.askInt("Wie lautet Ihre Matrikelnummer?");
SdtArray.matnr = z;
}
for(int i=0; i>m; i++){
System.out.println(Student.nachname);
}
}
}
class Student {
//Attribute
public static String vorname;
public static String nachname;
public static int matnr;
}[/CODE]
Die Terminal-Klasse beinhaltet mehrere vorgeschriebene Methoden, wie zum Beispiel das Erfragen eines strings oder integers auf der Konsole.
Was muss ich nun ändern, damit die Attribute auf der Konsole erfragt werden und anschließend alle Objekte m mit deren Attributen in einer Schleife ausgegeben werden?
Implementieren Sie eine Klasse Student. Fügen Sie die Attribute nachname und vorname vom Typ String und matnr vom Typ int hinzu. In dieser Aufgabe sollen die Attribute von außen sichtbar sein.
Testen Sie nun diese Klasse, indem Sie eine weitere Klasse Tub schreiben, die über eine main-Methode verfügt. Gehen Sie dazu wie folgt vor:
• Definieren Sie eine Variable m, welche die Anzahl der Studenten in einem Array repräsentiert. m soll über die Terminal-Klasse eingelesen werden (public static int readInt()).
• Definieren Sie ein Array vom Typ Student[] mit der Länge m.
• Initialisieren Sie nun in einer geeigneten Schleife die Studenten im Array. Die Attribute eines jeden Studenten sollen mithilfe von Benutzereingaben initialisiert werden. Benutzen Sie auch dafür die TerminalKlasse. Führen Sie den Benutzer durch das Programm mithilfe von Konsolenausgaben.
• Geben Sie anschließend die Daten aller Studenten mithilfe einer weiteren Schleife auf der Konsole aus.
Bei der Ausführung wird zunächst nach m gefragt, sobald ich dafür eine Zahl eingebe, endet das Programm und ich werde auf der Konsole nach einer neuen Eingabe gefragt..
Hier mein Code:
[CODE lang="java" title="Code"]public class Tub {
public static void main(String[] args) {
int m = Terminal.readInt();
Student[] SdtArray = new Student [m];
for(int i=0; i>m; i++){
SdtArray = new Student();
String x = Terminal.askString("Wie lautet Ihr Nachname?");
SdtArray.nachname = x;
String y = Terminal.askString("Wie lautet Ihr Vorname?");
SdtArray.vorname = y;
int z = Terminal.askInt("Wie lautet Ihre Matrikelnummer?");
SdtArray.matnr = z;
}
for(int i=0; i>m; i++){
System.out.println(Student.nachname);
}
}
}
class Student {
//Attribute
public static String vorname;
public static String nachname;
public static int matnr;
}[/CODE]
Die Terminal-Klasse beinhaltet mehrere vorgeschriebene Methoden, wie zum Beispiel das Erfragen eines strings oder integers auf der Konsole.
Was muss ich nun ändern, damit die Attribute auf der Konsole erfragt werden und anschließend alle Objekte m mit deren Attributen in einer Schleife ausgegeben werden?