Pengecualian Java: Jenis, Hierarki & Penanganan
Pengecualian Java
Jelajahi pengecualian Java—pemahaman tentang kesalahan, jenis pengecualian, dan hierarki yang membentuk penanganan kesalahan yang kokoh.
Sebuah pengecualian adalah peristiwa tak terduga yang mengganggu aliran normal program, seringkali mengakibatkan akhir yang tidak normal.
Sebuah pengecualian dapat timbul dari berbagai penyebab, termasuk:
- Masukan pengguna yang tidak valid
- Kegagalan perangkat
- Gangguan jaringan
- Keterbatasan fisik (misalnya, kehabisan ruang disk)
- Defek kode
- Mencoba membuka file yang tidak tersedia
Hierarki Pengecualian Java
Di bawah ini adalah diagram sederhana dari hierarki pengecualian Java.

Akar hierarki ini adalah kelas Throwable. Ia terpecah menjadi dua cabang utama: Error dan Exception.
Errors
Errors mewakili kondisi yang tidak dapat dipulihkan seperti JVM out-of-memory, stack overflow, inkompatibilitas perpustakaan, dan rekursi tak hingga. Biasanya di luar kendali programmer, dan mencoba untuk menangani mereka tidak disarankan.
Exceptions
Exceptions adalah kondisi yang dapat ditangani dan dipulihkan oleh program. Saat pengecualian terjadi, JVM membuat objek pengecualian yang mengenkapsulasi nama, deskripsi, dan status program pada saat peristiwa tersebut.
Dalam tutorial selanjutnya kita akan membahas cara menangani pengecualian ini. Untuk saat ini, mari kita periksa dua kategori utama di dalam cabang Exception.
Jenis Pengecualian Java
Cabang Exception terbagi menjadi RuntimeException (tidak diperiksa) dan IOException (diperiksa). Memahami perbedaannya adalah kunci untuk penanganan kesalahan yang efektif.
1. RuntimeException
RuntimeException timbul dari kesalahan pemrograman dan tidak diperiksa pada waktu kompilasi. Contoh umum meliputi:
- Penggunaan API yang tidak tepat –
IllegalArgumentException - Dereferensi null pointer –
NullPointerException - Indeks array melebihi batas –
ArrayIndexOutOfBoundsException - Pembagian dengan nol –
ArithmeticException
Singkatnya, jika itu adalah runtime exception, itu seringkali tanda kesalahan pemrograman yang harus diperbaiki daripada ditangkap.
2. IOException
IOException mewakili pengecualian yang diperiksa yang memaksa pengembang untuk menanganinya. Skenario umum meliputi:
- Mencoba membuka file yang tidak ada –
FileNotFoundException - Membaca melebihi akhir file
Penanganan yang tepat dari pengecualian yang diperiksa ini esensial untuk membangun aplikasi yang tangguh.
Kita akan menyelami teknik penanganan pengecualian dalam tutorial selanjutnya.