Hallo zusammen
Ich bin an einer Arbeit dran und stehe momentan ein bisschen an.
Ich habe ein Programm mit 3 Klassen. Die Klassen UserInterface, Jumper und Main.
Das Programm soll mittels Scanner das Alter und das Gewicht von den "Jumpern" einlesen, ein Objekt erzeugen und weitergeben. Mittels Try and Catch sollen allfällige Fehler bei der eingabe aufgenommen werden sollen. Die Klassen sehen wie folgt aus:
[CODE lang="java" title="Main"]public class Main {
public static void main(String[] args) {
UserInterface ui = new UserInterface();
Jumper j = ui.readJumper();
if (j == null) {
System.out.println("Fehler. Bitte wiederholen");
} else {
System.out.println("Person erfolgreich erfasst:");
j.print();
}
}
}
[/CODE]
[CODE lang="java" title="Jumper"]public class Jumper {
private int alter;
private double gewicht;
public Jumper(int alter, double gewicht) {
this.alter = alter;
this.gewicht = gewicht;
}
public void print() {
System.out.println("Alter: "+alter+", Gewicht "+gewicht+"kg");
}
}
[/CODE]
Die Kassen Main und Jumper sind bereits vorgegeben und an diesen kann nichts verändert werden. In der Klasse Userinterface bin ich wie folgt vorgegangen:
[CODE lang="java" title="UserInterface"]import java.util.Scanner;
public class UserInterface {
public Jumper readJumper() {
Scanner keyScan = new Scanner(System.in);
// TODO: mögliche Eingabefehler abfangen
try {
System.out.print("Alter > ");
int alter = keyScan.nextInt();
System.out.print("Gewicht > ");
double gewicht = keyScan.nextDouble();
} catch (Exception e){
return null;
}
// TODO: Jumper-Objekt oder null zurückgeben
Jumper jumper = new Jumper (alter, gewicht);
if (alter <= 18 && alter >= 100 && alter==Math.round(alter) && gewicht >= 40 && gewicht >= 150){
return jumper;
} else {
return null;
}
}
}
[/CODE]
In der Klasse UserInterface habe ich bereits das einlesen mittels Scanner und das Try and Catch implementiert. In der If bedingung könnt ihr die Bedingungen lesen, welche die Springer Korrekt erfüllt haben müssen um ein Objekt erzeugen zu können. Diese Bedigungen sind an sich nicht das Problem, sonder das weitergeben des Objektes. Wenn beide Angaben(alter und gewicht) korrekt sind, soll die Methode readJumper() ein Objekt vom Typ Jumper mit den gemachten Angaben instanziieren und zurückgeben. Falls die Angaben fehlerhaft sind, soll null zurückgegeben werden.
Und nun zu meinem eigentlichen Problem. Ich schaffe es beim besten willen nicht das Objekt zu erzeugen/zurückgeben. Als Fehler erhalte ich immer
error: cannot find symbol Jumper jumper = new Jumper (alter, gewicht);
symbol: variable alter
symbol: cariable gewicht
Ich habe das Gefühl das ich eigentlich sehr nahe an der Lösung bin aber momentan sind mir leider die Ideen ausgegangen. Falls jemand weiter weiss bin ich für jede Hilfe sehr sehr Dankbar.
Grüssele
JavaNoobi
Ich bin an einer Arbeit dran und stehe momentan ein bisschen an.
Ich habe ein Programm mit 3 Klassen. Die Klassen UserInterface, Jumper und Main.
Das Programm soll mittels Scanner das Alter und das Gewicht von den "Jumpern" einlesen, ein Objekt erzeugen und weitergeben. Mittels Try and Catch sollen allfällige Fehler bei der eingabe aufgenommen werden sollen. Die Klassen sehen wie folgt aus:
[CODE lang="java" title="Main"]public class Main {
public static void main(String[] args) {
UserInterface ui = new UserInterface();
Jumper j = ui.readJumper();
if (j == null) {
System.out.println("Fehler. Bitte wiederholen");
} else {
System.out.println("Person erfolgreich erfasst:");
j.print();
}
}
}
[/CODE]
[CODE lang="java" title="Jumper"]public class Jumper {
private int alter;
private double gewicht;
public Jumper(int alter, double gewicht) {
this.alter = alter;
this.gewicht = gewicht;
}
public void print() {
System.out.println("Alter: "+alter+", Gewicht "+gewicht+"kg");
}
}
[/CODE]
Die Kassen Main und Jumper sind bereits vorgegeben und an diesen kann nichts verändert werden. In der Klasse Userinterface bin ich wie folgt vorgegangen:
[CODE lang="java" title="UserInterface"]import java.util.Scanner;
public class UserInterface {
public Jumper readJumper() {
Scanner keyScan = new Scanner(System.in);
// TODO: mögliche Eingabefehler abfangen
try {
System.out.print("Alter > ");
int alter = keyScan.nextInt();
System.out.print("Gewicht > ");
double gewicht = keyScan.nextDouble();
} catch (Exception e){
return null;
}
// TODO: Jumper-Objekt oder null zurückgeben
Jumper jumper = new Jumper (alter, gewicht);
if (alter <= 18 && alter >= 100 && alter==Math.round(alter) && gewicht >= 40 && gewicht >= 150){
return jumper;
} else {
return null;
}
}
}
[/CODE]
In der Klasse UserInterface habe ich bereits das einlesen mittels Scanner und das Try and Catch implementiert. In der If bedingung könnt ihr die Bedingungen lesen, welche die Springer Korrekt erfüllt haben müssen um ein Objekt erzeugen zu können. Diese Bedigungen sind an sich nicht das Problem, sonder das weitergeben des Objektes. Wenn beide Angaben(alter und gewicht) korrekt sind, soll die Methode readJumper() ein Objekt vom Typ Jumper mit den gemachten Angaben instanziieren und zurückgeben. Falls die Angaben fehlerhaft sind, soll null zurückgegeben werden.
Und nun zu meinem eigentlichen Problem. Ich schaffe es beim besten willen nicht das Objekt zu erzeugen/zurückgeben. Als Fehler erhalte ich immer
error: cannot find symbol Jumper jumper = new Jumper (alter, gewicht);
symbol: variable alter
symbol: cariable gewicht
Ich habe das Gefühl das ich eigentlich sehr nahe an der Lösung bin aber momentan sind mir leider die Ideen ausgegangen. Falls jemand weiter weiss bin ich für jede Hilfe sehr sehr Dankbar.
Grüssele
JavaNoobi