Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| programmierung:exceptions [2024/08/30 15:09] – swe | programmierung:exceptions [2025/12/20 14:53] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | Exceptions | + | ====== |
| Exceptions sind besondere Ereignisse oder Fehler, die während der Ausführung eines Programms auftreten und den normalen Ablauf des Programms unterbrechen. | Exceptions sind besondere Ereignisse oder Fehler, die während der Ausführung eines Programms auftreten und den normalen Ablauf des Programms unterbrechen. | ||
| + | ===== try und catch ===== | ||
| Dabei gibt es eine '' | Dabei gibt es eine '' | ||
| Line 8: | Line 10: | ||
| Sollte dieser Versuch eine Ausnahme '' | Sollte dieser Versuch eine Ausnahme '' | ||
| - | Beispiel | + | ==== Beispiel |
| Im Beispiel wird in Zeile 5 auf Element Nr.6 des Array '' | Im Beispiel wird in Zeile 5 auf Element Nr.6 des Array '' | ||
| Line 18: | Line 21: | ||
| (Natürlich ist im Beispiel nach durchlaufen des Codes das Programm beendet. Aber eben normal beendet. Das Programm ist nicht abgestürzt) | (Natürlich ist im Beispiel nach durchlaufen des Codes das Programm beendet. Aber eben normal beendet. Das Programm ist nicht abgestürzt) | ||
| - | <code java [enable_line_numbers=" | + | <code java [enable_line_numbers=" |
| public class ExceptionExample { | public class ExceptionExample { | ||
| Line 34: | Line 37: | ||
| </ | </ | ||
| - | In diesem | + | ==== Beispiel |
| + | Schau Dir nun das folgende Beispiel an. Hier wird der User aufgefordert, | ||
| - | - **try**: Der Codeblock, der möglicherweise | + | Was würde aber passieren, wenn der User statt einer Zahl seinen Namen eingibt? Richtig - das Programm würde mit Pauken und Trompeten crashen! Es wird durch unsere Wahl '' |
| - | - **catch**: Der Codeblock, der die Ausnahme behandelt. | + | |
| + | Unser '' | ||
| + | Beachte, dass der Code unmittelbar mit werfen der Exception in den '' | ||
| + | |||
| + | Da der ganze '' | ||
| + | |||
| + | Erst wenn die Eingabe durch den '' | ||
| + | |||
| + | <code java [enable_line_numbers=" | ||
| + | import java.util.Scanner; | ||
| + | |||
| + | public class Main { | ||
| + | |||
| + | public static void main(String[] args) { | ||
| + | Scanner sc = new Scanner (System.in); | ||
| + | int zahl1 = 0; | ||
| + | |||
| + | while (true) { | ||
| + | try { | ||
| + | System.out.print(" | ||
| + | zahl1 = sc.nextInt(); | ||
| + | break; | ||
| + | } catch (Exception e) { | ||
| + | System.out.println(" | ||
| + | sc.next(); | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </ | ||