Wyjątki Java

W tym samouczku dowiemy się o wyjątkach w Javie. Omówimy błędy, wyjątki i różne typy wyjątków w Javie.

Wyjątkiem jest nieoczekiwane zdarzenie, które występuje podczas wykonywania programu. Wpływa na przepływ instrukcji programu, co może spowodować nieprawidłowe zakończenie działania programu.

Wyjątek może wystąpić z wielu powodów. Niektórzy z nich są:

  • Nieprawidłowe dane wejściowe użytkownika
  • Awaria urządzenia
  • Utrata połączenia sieciowego
  • Ograniczenia fizyczne (brak pamięci dyskowej)
  • Błędy kodu
  • Otwieranie niedostępnego pliku

Hierarchia wyjątków Java

Oto uproszczony diagram hierarchii wyjątków w Javie.

Jak widać na powyższym obrazku, Throwableklasa jest klasą główną w hierarchii.

Zwróć uwagę, że hierarchia dzieli się na dwie gałęzie: błąd i wyjątek.

Błędy

Błędy reprezentują nieodwracalne warunki, takie jak brak pamięci w wirtualnej maszynie Java (JVM), wycieki pamięci, błędy przepełnienia stosu, niezgodność bibliotek, nieskończona rekurencja itp.

Błędy są zwykle poza kontrolą programisty i nie powinniśmy próbować sobie z nimi radzić.

Wyjątki

Wyjątki mogą być wychwytywane i obsługiwane przez program.

Gdy w metodzie występuje wyjątek, tworzy ona obiekt. Ten obiekt jest nazywany obiektem wyjątku.

Zawiera informacje o wyjątku, takie jak nazwa i opis wyjątku oraz stan programu, w którym wystąpił wyjątek.

Dowiemy się, jak postępować z tymi wyjątkami w następnym samouczku. W tym samouczku skupimy się teraz na różnych typach wyjątków w Javie.

Typy wyjątków Java

Hierarchia wyjątków ma również dwie gałęzie: RuntimeExceptioni IOException.

1. Wyjątek RuntimeException

Wystąpił wyjątek w czasie wykonywania z powodu błędu programowania. Są również znane jako niezaznaczone wyjątki .

Te wyjątki nie są sprawdzane w czasie kompilacji, ale w czasie wykonywania. Niektóre z typowych wyjątków w czasie wykonywania to:

  • Niewłaściwe użycie API - IllegalArgumentException
  • Dostęp do wskaźnika o wartości zerowej (brak inicjalizacji zmiennej) - NullPointerException
  • Dostęp do tablicy poza zakresem - ArrayIndexOutOfBoundsException
  • Dzielenie liczby przez 0 - ArithmeticException

Możesz o tym myśleć w ten sposób. „Jeśli jest to wyjątek w czasie wykonywania, to Twoja wina”.

NullPointerExceptionNie doszłoby gdybyś sprawdził czy zmienna została zainicjowana lub nie przed jej użyciem.

ArrayIndexOutOfBoundsExceptionNie doszłoby, jeśli badany indeks tablicy przed granice tablicy.

2. IOException

IOExceptionJest również znany jako sprawdzonej wyjątku . Są one sprawdzane przez kompilator w czasie kompilacji, a programista jest proszony o obsłużenie tych wyjątków.

Oto niektóre przykłady zaznaczonych wyjątków:

  • Próba otwarcia pliku, który nie istnieje, skutkuje FileNotFoundException
  • Próbuję czytać poza końcem pliku

Teraz, gdy wiemy już o wyjątkach, dowiemy się o obsłudze wyjątków w następnym samouczku.

Interesujące artykuły...