Exception Han
Suatu program apabila
mengalami kesalahan akan menghasilkan suatu runtime errors seperti gagal
membuka file, suatu program melakukan akses diatas range array dan
lain-lain. ketika runtime errors tersebut terjadi, aplikasi akan membuat
suatu exception. Dalam definisi lain exception Suatu mekanisme
penanganan error atau event yang terjadi ketika program menemui
kesalahan saat instruksi program dijalankan.
Contoh kesalahan yang terjadi :
- Pembagian bilangan dengan 0
- Pengisian elemen array diluar ukuran array
- Kegagalan koneksi database
- File yang akan dibuka tidak exist
- Operand yg akan dimanipulasi out of prescribed range
- Mengakses obyek yang belum diinisialisasi
Tujuan dari setiap exception :
-
Error : mengindikasikan bahwa error yang terjadi adalah fatal
error (severe problem) dimana proses recovery sangat sulit dilakukan
bahkan tidak mungkin dilakukan. Contoh : program running out of memory.
- RuntimeException : mengindikasikan kesalahan implementasi atau desain program. Contoh : ArrayIndexOutOfBounds.
- Other exception : mengindikasikan kesalahan environment. Contoh : file not found, invalid URL exception.
Pengertian Try, Catch, Finally :
Try
digunakan untuk menempatkan kode-kode program java yang mengandung kode
program yang mungkin melemparkan exception. Catch digunakan untuk
menempatkan kode-kode program java yang digunakan untuk menangani sebuah
exception tertentu. Sedangkan finally digunakan untuk mendefinisikan
kode program yang selalu dieksekusi baik ada exception yang terjadi
maupun bila tidak terjadi exception sama sekali.
Kategori Exception :
Melempar exception :
1. Throw digunakan untuk melempar suatu exception jika user mengijinkannya dan akan di tangkap oleh exception.
2. Throws
Jika
sebuah method dapat menyebabkan sebuah exception namun tidak
menangkapnya, maka digunakan keyword throws. Aturan ini hanya berlaku
pada checked exception. Anda akan mempelajari lebih lanjut tentang
checked exception dan unchecked exception pada bagian selanjutnya,
“Kategori Exception”. Berikut ini penulisan syntax menggunakan keyword
throws :
() throws {
}
Sebuah method perlu untuk
menangkap ataupun mendaftar seluruh exceptions yang mungkin terjadi,
namun hal itu dapat menghilangkan tipe Error, RuntimeException, ataupun
subclass-nya.
Terima kasih buat penjelasannya, my problem solved :)