Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Do you remember this?.  Strategy  Concrete Strategy  Context  Client Strategy Pattern consists of..

Presentasi serupa


Presentasi berjudul: "Do you remember this?.  Strategy  Concrete Strategy  Context  Client Strategy Pattern consists of.."— Transcript presentasi:

1 Do you remember this?

2  Strategy  Concrete Strategy  Context  Client Strategy Pattern consists of..

3 Do you remember this? context strategy concrete strategy Client?

4 Refer to sample codes..

5 EXCEPTION HANDLING Tim Praktikum PSBO 08/09

6 Exception  Exception  suatu objek yang dibuat pada saat program mengalami suatu kondisi yang tidak wajar (abnormal)  Dalam java, exception dapat dibangkitkan secara otomatis oleh sistem atau secara manual oleh kita sendiri melelui kode yang ditulis.

7 Kesalahan yang terjadi :  Pembagian bilangan integer dengan 0  Pengisian elemen array diluar ukuran array  Kegagalan koneksi database  File yang akan dibuka tidak exist  Operand yg akan dimanipulasi out of prescribed range  Mengakses obyek yang belum diinisialisasi

8 Contoh  Pembagian dengan bilangan integer class DivByZero { public static void main(String args[]) { System.out.println(3/0); System.out.println(“Cetak.”); } Program akan jalan?

9  Kalaupun di run akan mendapat pesan  How to handle that? Exception handling using try, catch, finally method.

10 Try…  Try  blok dimana kode program memberitahukan kepada compiler bahwa suatu method akan terjadi exception  Blok try : digunakan untuk menempatkan kode-kode program java yang mengandung kode program yang mungkin melemparkan exception

11 Contoh try{ System.out.println(3/0); System.out.println("Cetak."); }  Type exception: ArithmeticException

12 Catch…  Catch merupakan pasangan dari try  Ketika try mengetahui tipe exception yang terjadi catch berfungsi untuk menghandle lemparan kesalahan dari try

13 contoh catch(ArithmeticException exc) { System.out.println("salah coy soale dibagi nol"); }  Catch : Jika kita menangkap exception dengan type exception yang tidak sesuai maka exception handling tidak dapat dijalankan

14 Contoh Class public class Exception { public static void main(String args[]) { try { System.out.println(3/0); System.out.println("Cetak."); } catch(ArithmeticException exc) { System.out.println(“Error : Divided by zero!"); } catch(ArrayIndexOutOfBoundsException exc2) { System.out.println("Missing argument."); } System.out.println("Setelah Exception."); }

15  Outputnya : Error : Divided by zero! Setelah Exception

16 Contoh Class public class Exception { public static void main(String args[]) { try { System.out.println(3/0); System.out.println("Cetak."); } catch(ArithmeticException exc) { System.out.println(“Error : Divided by zero!"); } catch(ArrayIndexOutOfBoundsException exc2) { System.out.println("Missing argument."); } System.out.println("Setelah Exception."); }

17  Namun catch bisa di buat lebih dari satu dengan asumsi try akan melempar lebih dari satu exception handling dengan tipe yang berbeda. Contoh :

18 try { Fungsi bacaFile BukaFile BacaBarisFileSampaiHabis TutupFile } catch (KesalahanBukaFile) { // lakukan sesuatu } catch (KesalahanAlokasiMemori) { // lakukan sesuatu } catch (KesalahanTutupFile) { // lakukan sesuatu } Perbedaan exception yang ditangkap

19 Finally…  Blok finally : digunakan untuk mendefinisikan kode program yang selalu dieksekusi baik ada exception yang terjadi maupun bila tidak terjadi exception sama sekali.  Bersifat optional

20 public class FinallyDemo { public static void main(String[] args){ int i=0; String[] greetings = { "hello pagi", "cagur", "test lagi" }; while (i<4){ try{ System.out.println(greetings[i]); i++; } catch(ArrayIndexOutOfBoundsException e){ System.out.println("indeks value"); i++; //i=0; } finally{ System.out.println("finall"); }

21  Output : hello pagi-> i=0 finall Cagur-> i=1 finall test lagi-> i=2 finall indeks value -> exception finall Ketika ada exception atau tidak finall tetap akan keluar.  Output jika I di reset menjadi 0 ??

22  Diletakkan setelah statement catch  Hampir pasti dijalankan  Tidak dijalankan jika program keluar pada blok try  System.exit  Biasanya digunakan untuk kode resource-release  Menutup koneksi database  Menutup koneksi jaringan

23 throw  Selain menangkap, java juga mengizinkan seorang user untuk melempar sebuah exception.  Kata kunci  throw ;

24 throws  Jika sebuah method dapat menyebabkan sebuah exception namun tidak menangkapnya, maka digunakan keyword throws. Aturan ini hanya berlaku pada checked exception.  kata kunci  ( ) throws { }


Download ppt "Do you remember this?.  Strategy  Concrete Strategy  Context  Client Strategy Pattern consists of.."

Presentasi serupa


Iklan oleh Google