Hi,
ich habe folgende Aufgabe zu lösen:
"Schreiben Sie ein Programm DivisionWithExceptions, welches die Eingabe zweier ganzer Zahlen
akzeptiert und anschließend eine ganzzahlige Division dieser beiden Zahlen durchführt ( / -
Operator). Geben Sie das Ergebnis auf der Konsole aus.
Beachten Sie dabei Folgendes:
- Alle Exceptions, die auftreten können, sollen abgefangen werden! Hierbei sollen alle Exceptions
so spezifisch wie möglich abgefangen werden (also nicht einfach unter Verwendung der
Oberklasse Exception). Es soll im Falle einer aufgetretenen Exception das Ergebnis der
getMessage()-Methode des Fehlerobjektes ausgegeben werden."
Probs habe ich mit der 'Beachtung'. Ich habe folgendes geschrieben:
-> bei mir kommt bei nicht korrekter Eingabe immer nur der erste Fall als Ausgabe.
Desweiteren wäre es top, wenn mir jemand die verschiedenen Exceptions erklären könnte,
also was z.B bewirkt NumerFormatException im Gegensatz zu IllegalArgumentException, ich weißnur dass NumerFormatException eine weitere Unterklasse von IllegalArguemtException ist...
Für Hilfe wäre ich dankbar!
ich habe folgende Aufgabe zu lösen:
"Schreiben Sie ein Programm DivisionWithExceptions, welches die Eingabe zweier ganzer Zahlen
akzeptiert und anschließend eine ganzzahlige Division dieser beiden Zahlen durchführt ( / -
Operator). Geben Sie das Ergebnis auf der Konsole aus.
Beachten Sie dabei Folgendes:
- Alle Exceptions, die auftreten können, sollen abgefangen werden! Hierbei sollen alle Exceptions
so spezifisch wie möglich abgefangen werden (also nicht einfach unter Verwendung der
Oberklasse Exception). Es soll im Falle einer aufgetretenen Exception das Ergebnis der
getMessage()-Methode des Fehlerobjektes ausgegeben werden."
Probs habe ich mit der 'Beachtung'. Ich habe folgendes geschrieben:
Code:
import javax.swing.JOptionPane;
public class DivisionWithExceptions {
/**
* @param args
*/
public static void main(String[] args) {
double x;
try{
double input1 = Integer.parseInt(JOptionPane.showInputDialog("Willkommen beim Progamm zur Division zweier ganzer Zahlen, bitte geben Sie jetzt den Zaehler ein: "));
double input2 = Integer.parseInt(JOptionPane.showInputDialog("Bitte geben Sie jetzt den Nenner ein: "));
x = input1 / input2;
System.out.println("Die Division von "+input1+" und "+input2+" lautet "+x);
}
catch(NumberFormatException e){
System.out.println("Bitte geben Sie ausschliesslich ganze Zahlen ein.");
System.out.println(e.getMessage());
}
catch(IllegalArgumentException e){
System.out.println("Sie haben nicht den Typ der gewuenschten Eingabe verwendet!");
System.out.println(e.getMessage());
}
catch(RuntimeException e){
System.out.println("Es ist ein Runtime Fehler aufgetreten.");
System.out.println(e.getMessage());
}
catch(Exception e){
System.out.println("Es ist ein Fehler aufgetreten.");
System.out.println(e.getMessage());
}
}
}
-> bei mir kommt bei nicht korrekter Eingabe immer nur der erste Fall als Ausgabe.
Desweiteren wäre es top, wenn mir jemand die verschiedenen Exceptions erklären könnte,
also was z.B bewirkt NumerFormatException im Gegensatz zu IllegalArgumentException, ich weißnur dass NumerFormatException eine weitere Unterklasse von IllegalArguemtException ist...
Für Hilfe wäre ich dankbar!