Wednesday, April 29, 2020

EXCEPTION HANDLING

 EXCEPTION HANDLING


A.   Pengertian Exception

         Exception adalah setiap kejadian yang abnormal, tidak diharapkan, dan kondisi yang tidak umum yang mungkin terjadi pada saat run-time program.
         Exception adalah event yang terjadi ketika program menemui kesalahan saat intruksi program dijalankan.
         Exception adalah singkatan dari Exception Events. Menurut definisi umum, exception adalah kondisi abnormal yang terjadi pada saat program akan terjadi saat run-time. Runtime error atau kesalahan - kesalahan yang terjadi pada saat program berjalan dan exception. Exception dapat dibangkitkan secara otomatis oleh system Java runtime maupun sengaja kita buat melalui pernyataan tertentu untuk tujuan tertentu.
Jadi dapat kita simpulkan dari pengertian diatas, exception handling adalah suatu penanganan saat terjadi kesalahan pada sebuah program akan terjadi suatu bentuk penanganan oleh java runtime ataupun dilakukan oleh kita yang sering disebut dengan exception handling dan sudah berjalan otomatis oleh java runtime atau dijalankan oleh kita melalui sebuah prosedur untuk mendapatkan suatu hasil tertentu atau dalam arti lain yaitu suatu cara untuk mengatasi kesalahan user.
Fungsi dari exception handling adalah untuk mengatasi suatu kesalahan inputan user dengan suatu metode kita akan memberikan pesan pada saat user salah memasukan inputan dengan ini program tidak akan tertutup dengan sendirinya.

B.    Jenis Jenis Exception(ERROR) Handling

Berdasarkan jenisnya kesalahan dalam pemrograman terbagi menjadi 3, yaitu :
1.        Runtime Error
Adalah exception yang bisa saja tidak ditangani tanpa menyebabkan program berhenti kecuali jika propogasi exceptionnya samapai ke main, maka akan menyebabkan terminasi program secara subnormal. Checked exception adalah exception yang ditangani secara explicit didalam throws. Programmer harus mmembuat cath untuk menangani exception yang terjadi. Sedangkan error adalah kesalahan yang tidak unrecoverable exception artinya tidak bisa ditangani oleh catch.
Atau pengertian lain, Runtime error adalah kesalahan yang disebabkan oleh tidak tersedianya sumber daya atau kondisi yang normal bagi program untuk berjalan dengan baik, misalnya kekurangan memori computer, disk full, atau pintu drive tidak terkunci, dll.
2.        Logical Error
Adalah kesalahan yang disebabkan oleh kesalahan logika maupun model atau metode yang digunakan untuk pemrosesan data, sehingga menyebabkan informasi yang dihasilkan menjadi salah. Kesalahan ini tidak dapat dideteksi oleh compiler maupun interpreter, kesalahan ini disadari setelah melihat penyimpanan pada saat proses maupun hasil proses.
3.        Syntax Error
Adalah kesalahan yang disebabkan oleh kesalahan tata cara penulisan tanda baca, kesalahan pemakaian operator dan nilai. Kesalahan jenis ini akan dengan mudah dideteksi oleh compiler maupun interpreter.

C.   Perbedaan antara Class Error dan Class Exception

Seperti yang telah dijelaskan diatas bahwa kelas Exception merupakan kelas turunan dari kelas Throwable di package Java.Lang. Selain Exception, java.lang.Throwable juga memiliki subclass yaitu class Error.
1.      Penjelasan dari Class Error :
�AnError is a subclass ofThrowable that indicates serious problems that a reasonable application should not try to catch. Most such errors are abnormal conditions�(JDK 5.0 Documentation)
2.      Penjelasan dari class Exception :
�The class Exception and its subclasses are a form of Throwable that indicates conditions that a reasonable application might want to catch. � (JDK 5.0 Documentation). Seperti dari penjelasan yang diberikan oleh JDK Documentation, maka dapat kita lihat bahwa error dan exception pada dasarnya berbeda. Error merupakan masalah yang muncul tapi tidak ada alasan yang kuat untuk menangkapnya. Sedangkan Exception merupakan kesalahan kecil yang muncul dan ingin diperlakukan sesuai keinginan developer.

D.   Keyword penting pada Exception Handling

Ada 5 keyword penting pada java dalam hal exception handling :
1.      Try, Keyword ini biasanya digunakan dalam suatu block program. keyword ini digunakan untuk mencoba menjalankan block program kemudian mengenai dimana munculnya kesalahan yang ingin diproses. Keyword ini juga harus dipasangkan dengan keyword catch atau keyword finally yang akan dibahas pada point kedua dan ketiga.
Contoh programnya :
Perhatikan contoh diatas, ada beberapa hal penting yang perlu dilihat. Pertama, block program yag diyakini menimbulkan kesalahan maka ada di dalam block try and catch.Kedua, kesalahan yang muncul akan dianggap sebagai object dan ditangkap catch kemudian di assign ke variable kesalahan dengan tipe Exception. Ketiga, perintah setelah munculnya kesalahan pada block try tidak akan dieksekusi.
2.      catch, Jika anda sudah melihat contoh try maka secara tidak langsung anda sudah memahami kegunaan dari keyword ini. Dalam java, keyword catch harus dipasangkan dengan try. Kegunaan keyword ini adalah menangkap kesalahan atau bug yang terjadi dalam block try. Setelah menangkap kesalahan yang terjadi maka developer dapat melakukan hal apapun pada block catch sesuai keinginan developer.  
Contoh catch1Contoh Programnya :
                                                           

Contoh catchKeyword catch juga dapat diletakan berulang-ulang sesuai dengan kebutuhan. Contoh :







3.  finally, Keyword ini merupakan keyword yang menunjukan bahwa block program tersebut akan selalu dieksekusi meskipun adanya kesalahan yang muncul atau pun tidak ada.




Contoh Programnya :
Contoh Finally 



No comments:

Post a Comment