ich sitze gerade an einer Aufgabe, wo bei einem Fehlschlag beim konvertieren des Inhalts der Textfelder in int-Werte, die Temperatur Exception geworfen werden soll.
Meine Idee war, dass ich die NumberFormatException auffange und im catch-Block die TemperaturException werfe.
Leider tritt dabei der Fehler auf:
"unreported exception TemperaturException; must be caught or declared to be thrown".
Als Vorschlag gab er mir, dass ich es in einen try-catch Block schreibe (siehe unten). Das sieht mir aber nicht ganz sauber aus. Gibt es eine bessere Lösung?
Zudem soll der Inhalt der Exception widergeben, in welchem Textfeld der Fehler liegt. Deswegen dachte ich, mache ich zwei try-catch Blöcke.
Code:
but.setOnAction(e->{
try {
int fahrenheit = Integer.parseInt(fah.getText());
} catch(NumberFormatException en ) {
try {
throw new TemperaturException("Bitte nur eine Zahl in Fahrenheit eingeben.");
} catch (TemperaturException ex) {
ex.printStackTrace();
}
}
try {
int celsius = Integer.parseInt(cel.getText());
} catch(NumberFormatException ef ) {
try {
throw new TemperaturException("Bitte nur eine Zahl unter Celsius ausgeben.");
} catch (TemperaturException ex) {
ex.printStackTrace();
}
}
});







