PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Exceptions (Java)


Gast
2003-07-12, 12:19:02
Hi,


In einer Methode division (...) können Exceptions vom Typ ArithmeticException und MyException entstehen.


void ausgabe (intx, int y)
{
int div = division (x,y);
system.out.println("x/y=" + div);

???

}
int division (intx, int y)
{

???

}


- Wie ist denn die Signatur der Methode division (...) zu ändern, damit eine Exception an die aufrufende Methode weitergeleitet wird ?

- Wie erfolgt die Exception -Behandlung in der Methode ausgabe (...) ?



Danke.

HellHorse
2003-07-12, 14:04:56
Exceptions werden automatisch weitergeleitet.
Falls sie nicht von RuntimeException erben müssen sie in den Methodenkopf oder behandelt werden.
z.B.


public int division (intx, int y) throws MyException {...}


Ausnahmebehandlung musst du selbst machen
z.B.


public void ausgabe (intx, int y) {
try {
int div = division (x,y);
System.out.println("x/y=" + div);
} catch (MyException err) {
System.out.println("Division durch 0");
} finally {
....
}
}


falls du sie explizit nicht behandelst


public void ausgabe (intx, int y) throws MyException {
int div = division (x,y);
System.out.println("x/y=" + div);
}

Tritt eine Exception auf, wird der Thread gekillt und ein printStackTrace() gemacht.