Problemchen mit Exception(s)

Status
Nicht offen für weitere Antworten.

CaptainItalo

Mitglied
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:

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!
 
S

SlaterB

Gast
wie kommst du denn überhaupt darauf, IllegalArgumentException abzufangen, wenn du sie nicht kennst?

und ist das Forum wirklich deine erste Suchstelle wenn etwas allgemeines in Java nicht kennst?
http://www.galileocomputing.de/open...07_001.htm#mjb77000d84ca2d27befe33fd212f99b89

ich hätte ja jetzt sogar auf den Index in dem Buch verwiesen,
wenn nicht der Link für IllegalArgumentException dort kaputt wäre ;)

google +API gibts auch noch,
was kann man auch groß sagen zu IllegalArgumentException,
außer dass da ein illegales Argument übergeben wurde? ;)
 

CaptainItalo

Mitglied
Das was Du mir als Link gegeben hast, habe ich ja auch schon gelesen.
In der Vorlesung haben wir die verschiedenen Exception-typen aufgelistet bekommen.
Bei der Aufgabe können doch nur zwei Exceptions auftauchen (keine Zahl und Nenner ist 0), oder?
->stimmt, bei mirsteht dann 'Infinity' bei Nenner 0.
Wie kann ich denn bekommen, dass dort eine Exception greift?
 

CaptainItalo

Mitglied
Hmm, da meckert er...
Aber es ist doch zulässig, dass ich in den try Block noch einen if-Block mit Exception einbaue?!
Ist es richtig, dass ich nur zwei mögliche Exception hier auftreten können?!
 

CaptainItalo

Mitglied
Könnt ihr mir denn noch sagen,ob es richtig ist dass 'nur' zwei Exceptions bei diesem Programm auftreten können?
-bei Division durch 0
-bei Eingabe keiner Integer Zahl
Ist das korrekt?
 

Leroy42

Top Contributor
Jein!

Prinzipiell können noch andere Exceptions auftreten

OutOfMemoryException, ...

Auch das System.out.println(...) könnte theoretisch was werden.

Aber die alle sind mit Sicherheit nicht gefragt und könnten auch nur
per catch Exception (Oberklasse) alle aufgefangen werden.

Sonst denke ich mal, das die beiden Exceptions die Gesuchten sind,
 
R

Roar

Gast
OutOfMemoryException gibts auch nicht, das ist nämlich ein Error und keine Exception. hör mah auf den immer so zu verarschen :roll:
 

CaptainItalo

Mitglied
Es ist aber sch..., dass ich alles jetzt in Integer ändern musste.
Wenn also kein Rest 0 ist,dann passt ja alles nicht mehr...
Nun gut, kann man denn eine kurze Antwort geben auf die Frage:
"Welche Vorteile bietet Exception-Handling gegenüber klassischen Methoden der Fehlerbehandlung?".Denn dieses muss ich der Aufgabe als Lösung noch geben.
 

Leroy42

Top Contributor
Roar hat gesagt.:
OutOfMemoryException gibts auch nicht, das ist nämlich ein Error und keine Exception. hör mah auf den immer so zu verarschen :roll:

:shock:

Okay, okay.

Werde mich freiwillig in CaptainItalo's Ignore-Liste eintragen

:oops:
 

AlArenal

Top Contributor
Ich hab schon Pipi inne Augen!!! LOL

Was deine Frage angeht, CI, so haben wir hier den Grundsatz keine Hausaufgaben zu machen. Es steht dir frei dir ein Buch zu schnappen und/oder im Netz mal ein paar einführende Kapitel zum Konzept der Exceptions in Java zu lesen. Ist wirklich nicht sonderlich schwer zu verstehen und sollte auch nicht länger dauern als über 42 und meine Beiträge hinwegzulesen ;)
 

CaptainItalo

Mitglied
Hmm,
ok aber ich finde keine Exception über die Division durch 0 mit dem Typ double.
Denn 'ArithmeticException' funktioniert nur bei int.
Das bereitet mir Kopfzerbrechen.
 

Leroy42

Top Contributor
CaptainItalo hat gesagt.:
ok aber ich finde keine Exception über die Division durch 0 mit dem Typ double.
Denn 'ArithmeticException' funktioniert nur bei int.
Haahh! Jetzt darf ich wieder (geht eben nicht um Exceptions)

In Java wird eine double-Division durch 0 erlaubt. Das Ergebnis ist
dann eben Infinity oder NaN
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Taschenrechner Problemchen Java Basics - Anfänger-Themen 3
B Problemchen mit Bild Java Basics - Anfänger-Themen 10
S ImageViewer mit kleinen Problemchen Java Basics - Anfänger-Themen 4
P Problemchen mit Array Java Basics - Anfänger-Themen 14
X Problemchen C++ vs. Java Java Basics - Anfänger-Themen 19
T JDBC Problemchen Java Basics - Anfänger-Themen 2
N Kleines Problemchen mit ButtonGroup Java Basics - Anfänger-Themen 2
S GridBagLayout: Problemchen Java Basics - Anfänger-Themen 2
E JCheckBox-problemchen Java Basics - Anfänger-Themen 2
J anfänger problemchen. Java Basics - Anfänger-Themen 26
I kleines problemchen bei DecimalFormat Java Basics - Anfänger-Themen 6
I Exception wird gefangen, aber trotzdem in Error Log? Java Basics - Anfänger-Themen 10
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
Fiedelbambu Exception in Application constructor Java Basics - Anfänger-Themen 3
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
U Warum kriege ich hier eine nullpointer exception, sehe den Fehler nicht (swing) Java Basics - Anfänger-Themen 1
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
M Exception in thread "main" java.util.NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception beim Verwenden von Arraylist? Java Basics - Anfänger-Themen 10
B Compiler-Fehler Fehlermeldung Exception in thread, falsche Eingabewert Java Basics - Anfänger-Themen 2
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
T Eigene Exception - ohne werfen abfangen Java Basics - Anfänger-Themen 2
LiFunk Exception: es dürfen nur Nummern eingelesen werden Java Basics - Anfänger-Themen 6
low_in_the_head Eigene Exception nutzen Java Basics - Anfänger-Themen 4
1 Exception Java Basics - Anfänger-Themen 2
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
I JAX-RS Exception Handling Java Basics - Anfänger-Themen 4
L Meine erste eigene Exception Klasse Java Basics - Anfänger-Themen 10
J null exception Array Java Basics - Anfänger-Themen 5
H Frage zu Throw Exception Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
C Exception-Frage Java Basics - Anfänger-Themen 3
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8
I Exception bei Button mit wait() und notifyAll() Java Basics - Anfänger-Themen 3
N Wie teste ich eine geworfene Exception? Java Basics - Anfänger-Themen 8
R Methoden ArrayList clonen wirft exception Java Basics - Anfänger-Themen 3
D Scanner- Exception NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception werfen bei falscher Datumseingabe Java Basics - Anfänger-Themen 14
A Exception handeling mit finally und objektreferenzen Java Basics - Anfänger-Themen 6
D Frage zu Strings einer Exception Java Basics - Anfänger-Themen 4
S Exception Java Basics - Anfänger-Themen 2
J Exception-Aufgabe Java Basics - Anfänger-Themen 8
S Verwenden von throw Exception an der Funktion Java Basics - Anfänger-Themen 2
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
Z Fragen zu Exception (Throws/throw) Java Basics - Anfänger-Themen 7
OSchriever Exception für Abbrechen-Schaltfläche JOptionpane Java Basics - Anfänger-Themen 9
J Dateien in Verzeichnissen rekursiv auflisten wirft Exception Java Basics - Anfänger-Themen 4
J Exception unreachable Java Basics - Anfänger-Themen 12
O unchecked Exception Java Basics - Anfänger-Themen 4
P Exception werfen Java Basics - Anfänger-Themen 15
B EJB und Arquillian - bekomme Nullpointer Exception beim Aufruf der EJB Klasse Java Basics - Anfänger-Themen 40
S Exception bei Verwendung von LocalDate Java Basics - Anfänger-Themen 19
I Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 Java Basics - Anfänger-Themen 3
D Warum die Nullpointer Exception Java Basics - Anfänger-Themen 6
O Exception behandlung einfach Ueben mit Fakt! Java Basics - Anfänger-Themen 10
I OOP Was ist die "Exception Hierarchie" ? Java Basics - Anfänger-Themen 3
U Null Exception aber keine Ahnung warum Java Basics - Anfänger-Themen 5
G Exception und Ausgabe der Duplikate Java Basics - Anfänger-Themen 6
H Try Catch Throw Exception Java Basics - Anfänger-Themen 1
W Exception in Main abfangen oder in der Methode? Java Basics - Anfänger-Themen 10
F Referenz an ein Objekt in einer anderen Klasse erstellen(Nullpointer exception) Java Basics - Anfänger-Themen 6
Mosquera Exception Java Basics - Anfänger-Themen 5
M rekursive division/0 mit exception Java Basics - Anfänger-Themen 18
N Nullpointer exception Java Basics - Anfänger-Themen 4
L Eigene Exception schreiben bei zu langem Array Java Basics - Anfänger-Themen 10
R Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 10
I equals (Override) mit eigener Exception (keine Runtime-Exception) Java Basics - Anfänger-Themen 9
S Array Grenzen-Exception Java Basics - Anfänger-Themen 11
E InputStream im Servlet wirft Exception Java Basics - Anfänger-Themen 5
D Erste Schritte Java.lang.NullPointer.Exception Java Basics - Anfänger-Themen 8
G Arrays out of Bounds exception Java Basics - Anfänger-Themen 2
H Compiler-Fehler Out of Bunce Exception bei einem Char Java Basics - Anfänger-Themen 6
C Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 Java Basics - Anfänger-Themen 3
C Null Pointer Exception Java Basics - Anfänger-Themen 10
F Klassen Eigene Exception Bedingungen festlegen Java Basics - Anfänger-Themen 2
G Null Pointer Exception Java Basics - Anfänger-Themen 4
GreenTeaYT Exception und zur OOP fragen? Java Basics - Anfänger-Themen 3
O Exception bei Parse-Vorgang Java Basics - Anfänger-Themen 17
T Exception Problem Java Basics - Anfänger-Themen 5
Z Getter/Setter NullPointer Exception Java Basics - Anfänger-Themen 6
W Nullpointer Exception bei .add(...) Java Basics - Anfänger-Themen 6
L Input/Output InputMismatch.Exception Java Basics - Anfänger-Themen 7
B Exception Liste von Liste Java Basics - Anfänger-Themen 3
D Throw Exception Java Basics - Anfänger-Themen 2
MiMa JavaDoc Exception @throws schlagen an Java Basics - Anfänger-Themen 4
J Exception in thread "main" Java Basics - Anfänger-Themen 1
B Exception richtig einbinden Java Basics - Anfänger-Themen 1
M Exception soll Werte mitgeliefert bekommen Java Basics - Anfänger-Themen 12
M Selbstdefinierte Exception Java Basics - Anfänger-Themen 5
B Exception Throwable Java Basics - Anfänger-Themen 11
M Erste Schritte Start Methode - Exception Java Basics - Anfänger-Themen 1
F Operatoren Wieso fliegt hier eine NullPointer Exception :( Java Basics - Anfänger-Themen 3
F nullpointer exception - arrayerstellung Java Basics - Anfänger-Themen 4
K Iterator-Interface implementieren mit Exception Handlung Java Basics - Anfänger-Themen 1
H Erste Schritte Exception: 0 Java Basics - Anfänger-Themen 2
A Exception vs. Testklasse (Programm testen) Java Basics - Anfänger-Themen 2

Ähnliche Java Themen


Oben