Anda di halaman 1dari 5

11

MODUL 6 EXCEPTION HANDLING 1. Tujuan Mengenal kelas menangani Menangani exception dengan menggunakan try, catch Menangani exception dengan menggunakan try,catch dan finally 2. Teori Singkat Kesalahan merupakan bagian normal dari pemrograman. Beberapa kesalahan merupakan kelemahan perancangan atau implementasi, enis kesalahan ini disebut bug. Kesalahan kedua bukan merupakan bug tapi karena hasil suatu situasi!kondisi!lingkungan seperti munculnya memori habis atau pengaksesan array diluar angkauan array tersebut. Kondisi abnormal ketika program sudah di alankan disebut exception. "eluruh exceptions adalah subclasses, baik secara langsung maupun tidak langsung,dari sebuah root class Throwable. Kemudian, dalam class ini terdapat dua kategori umum # Error class dan Exception class Berikut ini disa ikan struktur hirarki dari exception dalam a$a kelas exception. yang

22

%ntuk menangani exception di dalam a$a digunakan pernyataan try, catch, ataupun bisa ditambahkan pernyataan finally seperti diba&ah ini# try ' ( catc )*exception +ype, *$ar-ame,.' ( ! catc )*exception +ype, *$ar-ame,.' ( "ina##y' ( Beberapa hal yang perlu diperhatikan ketika melakukan pemrograman dengn menggunakan exception handling adalah sebagai berikut## / / / / 0a ib membuat notasi blok "etiap blok try boleh memiliki lebih dari satu blok catch dan hanya boleh memiliki satu blok finally Blok catch dan blok finally harus muncul bersama blok try Blok try harus diikuti minimal satu blok catch, atau satu blok finally, atau kedua blok catch dan finally Gambar alur kerja try,catch,finally

11

1. Pe#ak$anaan Praktiku% Progra% & public class 2atihan3xception1 ' public static $oid main)"tring4 5 args. ' int x 6 27 int y 6 x 8 27 int 9 6 x ! y7 !!penyebab error "ystem.out.println):-ilai 9 6 : ; 9.7 ( ( <ada program diatas ketika di alankan akan muncul error Exception in thread "main" java.lang.ArithmeticException: / by ero. =a ini ter adi karena nilai > dibagi dengan ? Progra% '( %enggunakan e)ce*tion public class LatihanException2 { public static void main(String[] args) { int x = 2; int = x ! 2; tr { int " = x # ; S stem$out$println(%&ilai " = % ' "); ( catch ()rithmeticException e) { S stem$out$print(%*erdapat +esalahan, %);

GG

S stem$out$println(e$get-essage()); ( ( (

<ada program no.2 diatas, tidak ter adi error disebabkan kesalahan yang disebabkan oleh pembagian suatu bilangan dengan ?, sudah ditanggani oleh class ArithmeticException. Progra% + ( %enggunakan "ina##y public class 3xception@inally ' public static $oid main) "tring4 5 args .' int ages456ne& int4A57 try' "ystem.out.println) ages4B5 .7 ( catch) CrrayDndexEutEfBounds3xception exp .' "ystem.out.println):Crray +idak bisa diakses:.7 ( finally' "ystem.out.println):"udah dilakukan pengecekan:.7 ( <ada program diatas menggunakan try, catch serta pernyataan finally. "etelah dilakukan pengu ian pada blok try , bila ada kesalahan maka akan ditangkap pada bagian blok catch dan kemudian blok finally selan utnya diekseskusi. "edangkan bila tidak ada kesalahan pada blok try, selan utnya langsung mengekseskusi blok finally. Fadi blok finally akan selalu dieksekusi dibagian akhir G. Lati an 8 8 Buatlah program yang hanya bisa menerima input berupa angka sa a. Bila diinputkan selain angka )numeric. maka akan ditangkap oleh blok catch Berdasarkan program diatas tambahkan blok finally untuk menyatakan bah&a telah dilakukan pengecekan terhadap data yang diinputkan A. Tuga$ Hiberikan soal oleh dosen pengampu

AA

Anda mungkin juga menyukai