Junior — Middle
Wyjaśnij strukturę hierarchii wyjątków w języku Java i ich cechy
sobes.tech AI
Odpowiedź od AI
W Javie hierarchia wyjątków opiera się na klasie Throwable, która ma dwa główne podklasy:
Error— błędy związane z maszyną wirtualną (np.OutOfMemoryError), zwykle nie są obsługiwane w kodzie.Exception— wyjątki, które można i należy obsługiwać.
Z kolei, Exception dzieli się na:
- Sprawdzane wyjątki (Checked exceptions) — wymagają obowiązkowego obsłużenia lub deklaracji w sygnaturze metody (np.
IOException). - Nie sprawdzane wyjątki (Unchecked exceptions) — dziedziczą z
RuntimeException(np.NullPointerException), nie wymagają obowiązkowej obsługi.
Cechy:
- Sprawdzane wyjątki zmuszają programistę do jawnego obsługiwania błędów, co zwiększa niezawodność.
- Nie sprawdzane wyjątki zazwyczaj sygnalizują błędy programistyczne.
Przykład:
try {
// kod, który może wyrzucić IOException
} catch (IOException e) {
e.printStackTrace();
}
W ten sposób hierarchia wyjątków pomaga strukturyzować obsługę błędów i rozdzielać różne typy problemów.