Error Handling
OLEH: SAPRUDIN KOMALA, S.KOM.
Penanganan Kesalahan dalam Program
 Terdapat dua jenis kesalahan dalam program, yaitu kesalahan dalam
program pada saat kompilasi program dan kesalahan pada saat program
dijalankan.
 Jika kesalahan terjadi saat kompilasi, program tidak akan dapat dijalankan.
 Jika kesalahan terjadi saat program berjalan, program akan error.
 Dalam java, penanganan kesalahan menggunakan mekanisme Try-Catch,
sedangkan untuk exception dalam program yaitu dengan meletakkan
kode program yang diperkirakan menjadi penyebab terjadinya exception
di dalam blok Try diikuti dengan blok Catch yang menentukan jenis
exception yang ingin ditangani.
Contoh 1
1. Konsep Penanganan Kesalahan
dalam Program Aplikasi Berbasis
Obyek
 Kesalahan dalam kode Java ditangani dengan Exception Handling.
 Exception adalah suatu kondisi alir instruksi program menjadi tidak seperti
yg diinginkan.
 Secara garis besar, error dalam pemrograman Java dapat dikategorikan
menjadi sebagai berikut:
a. Runtime Error
 Runtime error dapat diterjemahkan sebagai salah satu jenis error yg terjadi
karena program dihentikan secara tiba-tba pada saat program sedang berjalan.
b. Syntax Error
 Syntax adalah suatu aturan penulisan yg sudah ditetapkan pada struktur
elemen-elemen dalam bahasa pemrograman. Syntax error dapat terjadi pada
command prompt, IDE Netbeans dan IDE Eclipse. Secara mendasar Syntax error
sebagai sebuah kesalahan dalam coding karena aturan penulisan yg tidak
sesuai atau kesalahan pada konstruksi kode. Misalnya, salah dalam menuliskan
keyword Java, kurang simbol seperti ( ) , . : ; { } “ ” ‘ ’ dll.
c. Logic Error
 Logic error terjadi jika program berjalan dan tidak memberikan hasil seperti
yang diinginkan karena kesalahan logika pemrograman. Misalnya
menggunakan tipe data integer untuk pengolahan data pecahan (desimal) atau
bisa juga karena kesalahan logika percabangan atau perulangan.
2. Prosedur Penanganan Kesalahan
(Error Handling) dalam Pemrograman
Berorientasi Obyek
 Exception bisa diterjemahkan sebagai object dalam java yg diturunkan dari
kelas java.lang.Throwable.
 Cara menangani error dengan Exception handling, perlu memperhatikan 2
blok yg menjadi ciri khas Exception Handling, yaitu blok try dan blok catch.
 Blok try bisa diterjemahkan sebagai blok code yg di dalamnya berisi code
yg berpotensi menghasilkan eksepsi, sedangkan blok catch bisa
diterjemahkan sebagai blok yg berisi code exception handlernya.
 Dengan demikian, try digunakan untuk diuji dan catch sebagai rutin yg
dijalankan saat ketemu exception.
 Ada suatu kondisi dimana dibutuhkan penanganan exception yg terdiri
atas beberapa blok catch.
 Dalam hal ini, sebaiknya letakkan object yg paling mungkin menghasilkan
eksepsi di blok yg paling dekat.
 Jika ada exception, exception yg terjadi dapat segera ditangkap oleh blok
yg sesuai dan kode program mengalir dengan normal.
 Sumber buku: Patwiyanto.2019.Pemrograman Berorientasi Objek KK RPL SMK/MK kelas XI.Jakarta: Bumi
Aksara halaman146-149
Exception Handling
 Exception adalah singkatan dari Exceptional Events.
 Menurut definisi umum, exception adalah kondisi abnormal yang terjadi
saat runtime.
 Runtime error atau kesalahan-kesalahan yang terjadi pada saat program
berjalan diwujudkan dan exception.
 Exception dapat dibangkitkan secara otomatis oleh sistem Java runtime
maupun sengaja kita buat melalui pernyataan tertentu untuk tujuan
tertentu.
 Ada 3 tipe utama exception: error system, exception dan exception
runtime.
Error system
 Error system dilempar oleh JVM dan direpresentasikan oleh kelas Error.
Kelas error mendeskripsikan error internal. Error semacam ini jarang
terjadi. Jika terjadi, kita dapat memberitahukan kepada user dan
menghentikan program secara normal. Contoh sub-kelas Error adalah
sebagai berikut :
Kelas Alasan yang mungkin terjadinya Exception
LinkageError Kelas punya ketergantungan pada kelas lain, tapi kelas lain
telah diubah tanpa menjaga kompatibilitasnya setelah
kompilasi dilakukan terhadap kelas pertama.
VirtualMachineError JVM telah kehabisan sumber daya yang dibutuhkan untuk
melanjutkan operasi.
Exception
 Exception direpresentasikan dalam kelas Exception, yang mendeskripsikan
error-error yang diakibatkan oleh program kita dan oleh lingkungan luar.
Error ini ditangkap dan ditangani oleh program kita. Beberapa contoh
subkelas dari Exception adalah sebagai berikut:
Kelas Alasan yang mungkin terjadinya Exception
ClassNotFoundException Percobaan menggunakan suatu kelas yang tidak ada. exception
ini terjadi jika kelas yang dijalankan tidak menggunakan perintah
java.
IOException Berkaitan dengan operasi masukan/ keluaran yang tidak valid,
membaca melampaui akhir suatu file, dan membuka file yang
tidak ada. Subkelas dari IOException antara lain:
InterruptedIOException, EOFException,
Exception runtime
 Exception runtime direpresentasikan oleh kelas RunTimeException, yang
mendeskripsikan kesalahan pemrograman, seperti casting yang salah,
pengaksesan array diluar batas, dan kesalahan numerik. Exception runtime
dilempar oleh JVM. Beberapa sub-kelas RunTimeException adalah sebagai
berikut :
Kelas Alasan yang mungkin terjadinya Exception
ArithmeticException Kesalahan pada operasi aritmatika
IndexOutOfBoundsException Beberapa jenis indeks diluar batas
NegativeArraySizeException Array diciptakan dengan ukuran negatif
NullPointerException Penggunaan acuan null yang tidak valid
ArrayStoreException Penyimpanan array dengan tipe data yang tidak sesuai
ClassCastException Cast yang tidak valid
IllegalArrayArgumentException Argumen yang tidak benar
SecurityException Aturan sekuriti yang dilanggar
IllegalMonitorStateException Operasi monitor illegal
IllegalStateException Lingkungan yang tidak benar
UnsupportedOperationException Operasi yang tidak didukung
Contoh 2
 Buat 1 file java dengan nama
BalokDenganException.java
dalam folder bernama exception
kemudian ketik script berikut

 Buat file ke-2 dengan nama
TestBalokDenganException.jav
simpan pada folder yang sama
kemudian ketik script berikut

 Compile kedua file tersebut
kemudian run file ke-2.
 Hasil eksekusi program:
 Sumber: http://bahasajava.com/contoh-program-mendeklarasikan-melemparkan-menangkap-exception-
java/
Sekian dan terima kasih

16. error handling

  • 1.
  • 2.
    Penanganan Kesalahan dalamProgram  Terdapat dua jenis kesalahan dalam program, yaitu kesalahan dalam program pada saat kompilasi program dan kesalahan pada saat program dijalankan.  Jika kesalahan terjadi saat kompilasi, program tidak akan dapat dijalankan.  Jika kesalahan terjadi saat program berjalan, program akan error.  Dalam java, penanganan kesalahan menggunakan mekanisme Try-Catch, sedangkan untuk exception dalam program yaitu dengan meletakkan kode program yang diperkirakan menjadi penyebab terjadinya exception di dalam blok Try diikuti dengan blok Catch yang menentukan jenis exception yang ingin ditangani.
  • 3.
  • 4.
    1. Konsep PenangananKesalahan dalam Program Aplikasi Berbasis Obyek  Kesalahan dalam kode Java ditangani dengan Exception Handling.  Exception adalah suatu kondisi alir instruksi program menjadi tidak seperti yg diinginkan.  Secara garis besar, error dalam pemrograman Java dapat dikategorikan menjadi sebagai berikut: a. Runtime Error  Runtime error dapat diterjemahkan sebagai salah satu jenis error yg terjadi karena program dihentikan secara tiba-tba pada saat program sedang berjalan.
  • 5.
    b. Syntax Error Syntax adalah suatu aturan penulisan yg sudah ditetapkan pada struktur elemen-elemen dalam bahasa pemrograman. Syntax error dapat terjadi pada command prompt, IDE Netbeans dan IDE Eclipse. Secara mendasar Syntax error sebagai sebuah kesalahan dalam coding karena aturan penulisan yg tidak sesuai atau kesalahan pada konstruksi kode. Misalnya, salah dalam menuliskan keyword Java, kurang simbol seperti ( ) , . : ; { } “ ” ‘ ’ dll. c. Logic Error  Logic error terjadi jika program berjalan dan tidak memberikan hasil seperti yang diinginkan karena kesalahan logika pemrograman. Misalnya menggunakan tipe data integer untuk pengolahan data pecahan (desimal) atau bisa juga karena kesalahan logika percabangan atau perulangan.
  • 6.
    2. Prosedur PenangananKesalahan (Error Handling) dalam Pemrograman Berorientasi Obyek  Exception bisa diterjemahkan sebagai object dalam java yg diturunkan dari kelas java.lang.Throwable.  Cara menangani error dengan Exception handling, perlu memperhatikan 2 blok yg menjadi ciri khas Exception Handling, yaitu blok try dan blok catch.  Blok try bisa diterjemahkan sebagai blok code yg di dalamnya berisi code yg berpotensi menghasilkan eksepsi, sedangkan blok catch bisa diterjemahkan sebagai blok yg berisi code exception handlernya.  Dengan demikian, try digunakan untuk diuji dan catch sebagai rutin yg dijalankan saat ketemu exception.
  • 7.
     Ada suatukondisi dimana dibutuhkan penanganan exception yg terdiri atas beberapa blok catch.  Dalam hal ini, sebaiknya letakkan object yg paling mungkin menghasilkan eksepsi di blok yg paling dekat.  Jika ada exception, exception yg terjadi dapat segera ditangkap oleh blok yg sesuai dan kode program mengalir dengan normal.  Sumber buku: Patwiyanto.2019.Pemrograman Berorientasi Objek KK RPL SMK/MK kelas XI.Jakarta: Bumi Aksara halaman146-149
  • 8.
    Exception Handling  Exceptionadalah singkatan dari Exceptional Events.  Menurut definisi umum, exception adalah kondisi abnormal yang terjadi saat runtime.  Runtime error atau kesalahan-kesalahan yang terjadi pada saat program berjalan diwujudkan dan exception.  Exception dapat dibangkitkan secara otomatis oleh sistem Java runtime maupun sengaja kita buat melalui pernyataan tertentu untuk tujuan tertentu.  Ada 3 tipe utama exception: error system, exception dan exception runtime.
  • 9.
    Error system  Errorsystem dilempar oleh JVM dan direpresentasikan oleh kelas Error. Kelas error mendeskripsikan error internal. Error semacam ini jarang terjadi. Jika terjadi, kita dapat memberitahukan kepada user dan menghentikan program secara normal. Contoh sub-kelas Error adalah sebagai berikut : Kelas Alasan yang mungkin terjadinya Exception LinkageError Kelas punya ketergantungan pada kelas lain, tapi kelas lain telah diubah tanpa menjaga kompatibilitasnya setelah kompilasi dilakukan terhadap kelas pertama. VirtualMachineError JVM telah kehabisan sumber daya yang dibutuhkan untuk melanjutkan operasi.
  • 10.
    Exception  Exception direpresentasikandalam kelas Exception, yang mendeskripsikan error-error yang diakibatkan oleh program kita dan oleh lingkungan luar. Error ini ditangkap dan ditangani oleh program kita. Beberapa contoh subkelas dari Exception adalah sebagai berikut: Kelas Alasan yang mungkin terjadinya Exception ClassNotFoundException Percobaan menggunakan suatu kelas yang tidak ada. exception ini terjadi jika kelas yang dijalankan tidak menggunakan perintah java. IOException Berkaitan dengan operasi masukan/ keluaran yang tidak valid, membaca melampaui akhir suatu file, dan membuka file yang tidak ada. Subkelas dari IOException antara lain: InterruptedIOException, EOFException,
  • 11.
    Exception runtime  Exceptionruntime direpresentasikan oleh kelas RunTimeException, yang mendeskripsikan kesalahan pemrograman, seperti casting yang salah, pengaksesan array diluar batas, dan kesalahan numerik. Exception runtime dilempar oleh JVM. Beberapa sub-kelas RunTimeException adalah sebagai berikut :
  • 12.
    Kelas Alasan yangmungkin terjadinya Exception ArithmeticException Kesalahan pada operasi aritmatika IndexOutOfBoundsException Beberapa jenis indeks diluar batas NegativeArraySizeException Array diciptakan dengan ukuran negatif NullPointerException Penggunaan acuan null yang tidak valid ArrayStoreException Penyimpanan array dengan tipe data yang tidak sesuai ClassCastException Cast yang tidak valid IllegalArrayArgumentException Argumen yang tidak benar SecurityException Aturan sekuriti yang dilanggar IllegalMonitorStateException Operasi monitor illegal IllegalStateException Lingkungan yang tidak benar UnsupportedOperationException Operasi yang tidak didukung
  • 13.
    Contoh 2  Buat1 file java dengan nama BalokDenganException.java dalam folder bernama exception kemudian ketik script berikut 
  • 14.
     Buat fileke-2 dengan nama TestBalokDenganException.jav simpan pada folder yang sama kemudian ketik script berikut   Compile kedua file tersebut kemudian run file ke-2.
  • 15.
     Hasil eksekusiprogram:  Sumber: http://bahasajava.com/contoh-program-mendeklarasikan-melemparkan-menangkap-exception- java/
  • 16.