Perbedaan eksepsi exception dan event di program Java
Perbedaan Exception Dan Event Di Program Java
Eksepsi adalah sebuah event, dapat terjadi selama eksekusi program yang kemudian mengubah alir eksekusi normal program (normal flow of program). Eksepsi (baca artikel Memahami Eksepsi (Exception) Di Java) berbeda dengan event (baca artikel Memahami Cara Menangani Aksi (Event) Di Java, Tipe Event, Listener dan Kelas Pemicu Event (Source Object) Di java dan Metoda Registrasi Dan Handler Dalam Penanganan Event Java) yang dipicu oleh beberapa komponen Java. Anda dapat menentukan apakah suatu komponen akan memicu event atau tidak.

Di penanganan event, obyek pendengar harus diregistrasi oleh obyek sumber, misalnya obyek kelas JButton. Aksi pengguna saat mengklik obyek button akan memicu action event. Obyek sumber akan memberitahu obyek pendengar dengan meminta handler yang diimplementasikan di obyek pendengar. Bila tidak ada satupun obyek pendengar diregistrasi oleh obyek sumber, maka event akan diabaikan. Tidak demikian dengan eksepsi, ketika eksepsi terjadi, eksepsi harus ditangani oleh program, bila tidak, program akan berakhir secara tidak normal.

Java sendiri mempunyai sejumlah kelas eksepsi yang telah terdefinisi (predefined exception class) seperti Exception, Error, RuntimeException, ClassNotFoundException, ArithmeticException dan IndexOutOfBoundsException. Semua kelas eksepsi tersebut berasal dari kelas Throwable yang merupakan root class dari eksepsi. Kelas Throwable terletak di paket java.lang, sedangkan kelas eksepsi turunan dapat berada di paket Java mana saja, misalnya paket java.awt.

Berikut ini adalah tabel beberapa metoda penting yang terdapat di kelas Throwable:

Metoda Penting Dari Kelas Throwable

Metoda Keterangan
getMessage() Mengembalikan pesan yang merupakan rincian dari eksepsi yang sedang terjadi.
getCause() Mengembalikan penyebab dari eksepsi yang diwakili oleh obyek Throwable.
toString() Mengembalikan string yang terdiri dari nama kelas dirangkai dengan string hasil dari metoda getMessage.

Eksepsi terjadi di metoda. Ketika kondisi tidak normal (error) tejadi, eksepsi akan dimunculkan atau dilemparkan (thrown) dalam bentuk obyek eksepsi (exception object). Alir kontrol normal program berhenti dan obyek eksepsi kemudian dibuat (created) untuk menangani kondisi eksepsi yang terjadi dan kemudian menyerahkannya ke sistem.