1 / 10

Algoritma & Pemrograman 1

Algoritma & Pemrograman 1. Exception Handling. Exception?. Teknik yang dipakai dalam Java dalam menangani kondisi yang tidak biasa dalam menjalankan operasi normal dalam program Peristiwa yang menjalankan alur proses normal pada program

Download Presentation

Algoritma & Pemrograman 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algoritma & Pemrograman 1 Exception Handling

  2. Exception? • Teknik yang dipakai dalam Java dalam menangani kondisi yang tidak biasa dalam menjalankan operasi normal dalam program • Peristiwa yang menjalankan alur proses normal pada program • Peristiwa ini biasanya terjadi berupa error dari beberapa bentukdikarenakan program kita berakhir tidak normal • c/ int []arr = new int[100]; //lebih disarankan daripada, int []arr; arr = new int[100]; Array d/ indeks 0 s/d n-1disini tidak ada elemen array arr[n]akan menyebabkan array index out-of-bounds exception: • exception ArrayIndexOutOfBounds terjadi jika mencoba mengakses array yang tidak ada • NumberFormatExceptionterjadi jika kita mencoba melalui parameter bukan angka dalam method Integer.parseInt.

  3. Menangani Exception • Sintaks try-catch-finally: try{ //pernyataan exception } catch( <exceptionType…n> <varName…n> ){ //aksi yang dapat dijalankan, jika exception } finally{ //tambahkan kode terakhir di sini } • Exception dilemparkan selama eksekusi dari blok try dapat ditangkap dan ditangani dalam blok catch • Kode dalam blok finally akan selalu di-eksekusi

  4. Setiap blok try, terdapat satu atau lebih blok catch, tetapi hanya satu blok finally. Blok catch dan blok finally harus selalu muncul dalam konjungsi dengan blok try, dan diatas urutan Blok try harus diikuti oleh paling sedikit satu blok catch or satu blok finally, or keduanya. Setiap blok catch mendefinisikan sebuah penanganan exception. Header dari blok catch harus membawa satu argumen, dimana exception pada blok tersebut akan ditangani. Exception harus menjadi class pelempar atau satu dari subclassesnya Alur kejadian blok try-catch-finally

  5. c/ • Next AplikasiexceptionCommondLine.java, exceptioncontoh.java • Run Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1 at ExceptionExample.main(ExceptionExample.java:5) • Antisipasi: di method main try{ System.out.println( args[1] ); }catch( ArrayIndexOutOfBoundsException exp ){ System.out.println("Exception caught!"); }

  6. Exception Multiple Catch • Penanganan exception lebih dari satu • Next AplikasiExceptionMultipleCatch.java • a) Tidak ada argument • b) 1 • c) 0

  7. Try bersarang • Next Aplikasi • ExceptionNestedTry.java • a) Tidak ada argumen • b) 15 • c) 15 3 • d) 15 0 • ExceptionNestedTry1.java • a) Tidak ada argumen • b) 15 • c) 15 3 • d) 15 0

  8. Error & Exception Classes • Seluruh exceptions adalah subclasses, dari sebuah root class Throwable • Type: • Error class • Exception class. • Exception class • kondisi yang dapat diterima oleh user programterjadi kesalahan pada kode program • c/ pembagian oleh 0 dan error di luar jangkauan array. • Error class • digunakan oleh JRE untuk menangani error yang muncul pada saat dijalankan • Hal ini di luar control user karena kemunculannya disebabkan oleh JRE • c/ out of memory & harddisk crash. • Aplikasi ExceptionDivByZero.java

  9. Keyword Finally • Sintaks: try { <kode monitor exception> } catch (<ExceptionType1> <ObjName>) { <penanganan jika ExceptionType1 terjadi> } ... } finally { <kode yang akan dieksekusi saat blok try berakhir> } • Next Aplikasi • ExceptionFinally.java

  10. Melempar Exception • Keyword: • throw throw <exception object>; ExceptionThow.java • throws • Jika sebuah method dapat menyebabkan sebuah exception namun tidak menangkapnya  ExceptionThows.java • <type> <methodName> (<parameterList>) throws <exceptionList> { <methodBody> }

More Related