EXCEPTION DAN ASSERTION TOPIK Apa yang dimaksud dengan










![EXCEPTIONS CATCH: TRY-CATCH class Div. By. Zero { 2 public static void main(String args[]) EXCEPTIONS CATCH: TRY-CATCH class Div. By. Zero { 2 public static void main(String args[])](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-11.jpg)




![EXCEPTIONS CATCH: TRY-CATCH 12. 13. 14. 15. e) { public static void main(String args[]){ EXCEPTIONS CATCH: TRY-CATCH 12. 13. 14. 15. e) { public static void main(String args[]){](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-16.jpg)




![EXCEPTIONS CATCH: KEYWORD FINALLY public static void main(String args[]){ for (int i=1; i<=4; i++) EXCEPTIONS CATCH: KEYWORD FINALLY public static void main(String args[]){ for (int i=1; i<=4; i++)](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-21.jpg)












![SINTAKS ASSERTION 4 class Age. Assert { public static void main(String args[]) { int SINTAKS ASSERTION 4 class Age. Assert { public static void main(String args[]) { int](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-34.jpg)

- Slides: 35

EXCEPTION DAN ASSERTION

TOPIK � Apa yang dimaksud dengan Exception? � � Pendahuluan Class-class Error dan Exception Contoh Menangkap Exception � � Pernyataan try-catch Kata kunci finally

TOPIK � Melempar Exception � � � Kata kunci throws Kategori Exception � � � Class-class dan hirarki Exception Checked dan Unchecked Exception User-Defined Exception

TOPIK � Assertion �Apa yang dimaksud dengan Assertion? �Mengaktifkan dan Menonaktifkan Assertion �Sintaks Assertion

EXCEPTION � Definisi: � Event-event Exceptional � Error-error yang mungkin muncul selama runtime � Menyebabkan program yang berjalan secara normal menjadi terganggu. � Contoh -contoh : � � � Error pembagian 0 Mengakses elemen di luar jangkauan sebuah array Input yang sifatnya invalid Hard disk crash Membuka file yang tidak ada Menyelesaikan masalah tumpukan memori.

CLASS ERROR DAN EXCEPTION � Class Throwable � Class Root dari class-class exception � Subclass-subclass Immediate � Error � Exception � Class Exception � menunjukkan kondisi yang dapat diterima oleh user program � Umumnya disebabkan oleh beberapa kesalahan pada kode program � Contoh-contoh � Pembagian oleh 0 � Error di luar jangkauan array

CLASS ERROR DAN EXCEPTION � Class Error � digunakan oleh Java run-time untuk menangani error yang muncul pada saat dijalankan � Secara umum hal ini di luar control user karena kemunculannya disebabkan oleh run -time environment � Contoh-contoh � Out of memory errors � Harddisk crash

1 2 3 4 5 6 CONTOH EXCEPTION class Div. By. Zero { public static void main(String args[]) { System. out. println(3/0); System. out. println(“Pls. print me. ”); } }

CONTOH EXCEPTION � didapatkan pesan kesalahan sebagai berikut Exception in thread "main" java. lang. Arithmetic. Exception: / by zero at Div. By. Zero. main(Div. By. Zero. java: 3) � Default handler �Menampilkan �Hirarki deskripsi exception stack trace method dimana exception terjadi �Menghentikan program secara paksa

EXCEPTIONS CATCH: TRY-CATCH � Sintaks: try { <code to be monitored for exceptions> } catch (<Exception. Type 1> <Obj. Name>) { <handler if Exception. Type 1 occurs> }. . . } catch (<Exception. Type. N> <Obj. Name>) { <handler if Exception. Type. N occurs> }
![EXCEPTIONS CATCH TRYCATCH class Div By Zero 2 public static void mainString args EXCEPTIONS CATCH: TRY-CATCH class Div. By. Zero { 2 public static void main(String args[])](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-11.jpg)
EXCEPTIONS CATCH: TRY-CATCH class Div. By. Zero { 2 public static void main(String args[]) { 3 try { 4 System. out. println(3/0); 5 System. out. println(“Please print me. ”); 6 } catch (Arithmetic. Exception exc) { 7 //Dibagi dengan 0 -> Arithmetic. Exception 8 System. out. println(exc); 9 } 10 System. out. println(“After exception. ”); 11 } 12 } 1

EXCEPTIONS CATCH: TRY-CATCH � Contoh Multiple catch 1 class Multiple. Catch { 2 public static void main(String args[]) { 3 try { 4 int den = Integer. parse. Int(args[0]); 5 System. out. println(3/den); 6 } catch (Arithmetic. Exception exc) { 7 System. out. println(“Divisor was 0. ”); 8 } catch (Array. Index. Out. Of. Bounds. Exception exc 2) { 9 System. out. println(“Missing argument. ”); 10 } 11 System. out. println(“After exception. ”); 12 } 13 }

EXCEPTIONS CATCH: TRY-CATCH � Nested try 1 class Nested. Try. Demo { 2 public static void main(String args[]){ 3 try { 4 int a = Integer. parse. Int(args[0]); 5 try { 6 int b = Integer. parse. Int(args[1]); 7 System. out. println(a/b); 8 } catch (Arithmetic. Exception e) { 9 System. out. println(“Div by zero error!"); 10 } 11 //bersambung. . .

EXCEPTIONS CATCH: TRY-CATCH 11 { 12 13 14 15 } } catch (Array. Index. Out. Of. Bounds. Exception) System. out. println(“Need 2 parameters!"); } }

EXCEPTIONS CATCH: TRY-CATCH � Nested trys dengan method-method 1. class Nested. Try. Demo 2 { 2. static void nested. Try(String args[]) { 3. try { 4. int a = Integer. parse. Int(args[0]); 5. int b = Integer. parse. Int(args[1]); 6. System. out. println(a/b); 7. } catch (Arithmetic. Exception e) { 8. System. out. println("Div by zero error!"); 9. } 10. } 11. //bersambung. . .
![EXCEPTIONS CATCH TRYCATCH 12 13 14 15 e public static void mainString args EXCEPTIONS CATCH: TRY-CATCH 12. 13. 14. 15. e) { public static void main(String args[]){](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-16.jpg)
EXCEPTIONS CATCH: TRY-CATCH 12. 13. 14. 15. e) { public static void main(String args[]){ try { nested. Try(args); } catch (Array. Index. Out. Of. Bounds. Exception System. out. println("Need 2 parameters!"); 17. } 18. } 19. } 16.

EXCEPTIONS CATCH: KEYWORD FINALLY � Sintaks: try { <code to be monitored for exceptions> } catch (<Exception. Type 1> <Obj. Name>) { <handler if Exception. Type 1 occurs> }. . . } finally { <code to be executed before the try block ends> } � Mengandung kode penanganan setelah penggunaan try dan catch

EXCEPTIONS CATCH: KEYWORD FINALLY � Kode selalu dieksekusi meskipun dengan skenario berbeda : � Proses keluar secara paksa menggunakan return, pernyataan continue atau break. � Penyelesaian secara normal � Menangkap lemparan exception �Exception akan dilempar dan ditangkap dalam sebuah method � Tidak menangkap lemparan exception �Lemparan Exception belum dispesifikasikan dalam beberapa baris catch dalam method tersebut

EXCEPTIONS CATCH: KEYWORD FINALLY 1 2 3 4 5 6 7 8 9 10 11 12 13 class Finally. Demo { static void my. Method(int n) throws Exception{ try { switch(n) { case 1: System. out. println("1 st case"); return; case 3: System. out. println("3 rd case"); throw new Runtime. Exception("3!"); case 4: System. out. println("4 th case"); throw new Exception("4!"); case 2: System. out. println("2 nd case"); } //bersambung. . .

EXCEPTIONS CATCH: KEYWORD FINALLY 14 15 16 17 18 19 20 21 } catch (Runtime. Exception e) { System. out. print("Runtime. Exception: "); System. out. println(e. get. Message()); } finally { System. out. println("try-block entered. "); } } //bersambung. . .
![EXCEPTIONS CATCH KEYWORD FINALLY public static void mainString args for int i1 i4 i EXCEPTIONS CATCH: KEYWORD FINALLY public static void main(String args[]){ for (int i=1; i<=4; i++)](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-21.jpg)
EXCEPTIONS CATCH: KEYWORD FINALLY public static void main(String args[]){ for (int i=1; i<=4; i++) { try { Finally. Demo. my. Method(i); } catch (Exception e){ System. out. print("Exception caught: "); System. out. println(e. get. Message()); } System. out. println(); } } 22 23 24 25 26 27 28 29 30 31 32 33 }

� � EXCEPTIONS THROWING : KEYWORD THROW Java mengijinkan Anda untuk melempar exception: throw <exception object>; Contoh: throw new Arithmetic. Exception(“testing. . . ”);

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 EXCEPTIONS THROWING: KEYWORD THROW class Throw. Demo { public static void main(String args[]){ String input = “invalid input”; try { if (input. equals(“invalid input”)) { throw new Runtime. Exception("throw demo"); } else { System. out. println(input); } System. out. println("After throwing"); } catch (Runtime. Exception e) { System. out. println("Exception caught: +e); } } }

EXCEPTIONS THROWING : KEYWORD THROW � Sebuah method diperlukan untuk menangkap ataupun mendaftar seluruh exceptions yang mungkin terjadi � Kecuali untuk Error atau Runtime. Exception, atau subclass-subclass nya � Jika sebuah method dapat menyebabkan sebuah exception namun tidak menangkapnya, maka digunakan keyword throws � Aturan ini hanya berlaku pada checked exception � Sintaks: <type> <method. Name> (<parameter. List>) throws <exception. List> { <method. Body> }

EXCEPTIONS THROWING: KEYWORD THROW 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Throwing. Class { static void meth() throws Class. Not. Found. Exception { throw new Class. Not. Found. Exception ("demo"); } } class Throws. Demo { public static void main(String args[]) { try { Throwing. Class. meth(); } catch (Class. Not. Found. Exception e) { System. out. println(e); } } }

CLASS-CLASS EXCEPTION DAN HIRARKI

CLASS-CLASS EXCEPTION DAN HIRARKI catch lebih dari satu harus berurutan dari subclass ke superclass. � 1 2 3 4 5 6 7 8 9 10 11 class Multiple. Catch. Error { public static void main(String args[]){ try { int a = Integer. parse. Int(args [0]); int b = Integer. parse. Int(args [1]); System. out. println(a/b); } catch (Exception ex) { } catch (Array. Index. Out. Of. Bounds. Exception e) { } } }

CHECKED DAN UNCHECKED EXCEPTIONS � Checked Exception � Compiler memeriksa keseluruhan program apakah menangkap atau mendaftar exception yang terjadi dalam sintax throws � Jika tidak, error compiler akan terjadi � Unchecked Exception � Tidak berupa compile-time checking dalam penanganan exceptions � Class-class exception Built-in unchecked � Error � Runtime. Exception � Subclass-subclassnya � Mengatasi semua exception-exception ini mungkin membuat program kacau dan mungkin menyusahkan programmer.

USER-DEFINED EXCEPTIONS � Membuat exceptions Anda sendiri � Membuat sebuah class yang extends terhadap Runtime. Exception atau class Exception � Modifikasi class �Members class � dan constructors dapat ditambahkan pada Contoh: 1 class Hate. String. Exp extends Runtime. Exception { 2 /* Tidak ada penambahan anggota atau construktor sedikitpun */ 3 }

USER-DEFINED EXCEPTIONS � Menggunakan user-defined exceptions 1 class Test. Hate. String { 2 public static void main(String args[]) { 3 String input = "invalid input"; 4 try { 5 if (input. equals("invalid input")){ 6 throw new Hate. String. Exp(); 7 } 8 System. out. println("Accept string. "); 9 } catch (Hate. String. Exp e) { 10 System. out. println("Hate string!”); 11 } 12 } 13 }

ASSERTIONS � Memungkinkan programmer untuk menemukan sebuah asumsi terhadap suatu masalah � Contoh : bulan � Extension dari comments dimana pernyataan yang menyatakan informasi kepada pembaca kode dalam keadaan yang bermacam-macam seharusnya merasa puas � Jalannya program menginformasikan kepada Anda apakah Assertion yang dibuat sudah benar atau belum � Jika sebuah assertion tidak benar, sebuah Assertion. Error akan diberikan User memiliki pilihan untuk menghidupkan atau mematikannya pada saat runtime �

� � � MENGAKTIFKAN DAN MENONAKTIFKAN ASSERTIONS Program dengan assertions mungkin tidak bekerja dengan baik jika digunakan oleh clients tidak memanfaatkan assertions yang telah digunakan dalam kode. Proses Kompilasi � Dengan fitur assertion: javac –source 1. 4 My. Program. java � Tanpa fitur assertion: javac My. Program. java Mengaktifkan assertions: � Menggunakan –enableassertions atau –ea switch. java –enableassertions My. Program

SINTAKS ASSERTION � Dua bentuk: � Bentuk yang lebih sederhana: assert <expression 1>; dimana �<expression 1> adalah kondisi assertion bernilai true � Bentuk Lain: assert <expression 1> : <expression 2>; dimana �<expression 1> adalah kondisi yang bernilai true �<expression 2> adalah informasi yang membantu pemeriksaan mengapa program mengalami kesalahan
![SINTAKS ASSERTION 4 class Age Assert public static void mainString args int SINTAKS ASSERTION 4 class Age. Assert { public static void main(String args[]) { int](https://slidetodoc.com/presentation_image/551761971bdd3f49a76e09398cd5c7be/image-34.jpg)
SINTAKS ASSERTION 4 class Age. Assert { public static void main(String args[]) { int age = Integer. parse. Int(args[0]); assert(age>0); 5 /* jika usia sifatnya valid (contoh, age>0) */ 1 2 3 if (age >= 18) { System. out. println(“You're adult”); } 6 7 8 9 10 } }

KESIMPULAN � Exception � Definisi � try, catch dan finally � throw dan throws � Class-class Throwable, Exception, Error � Exception-exception Checked dan Unchecked � User-Defined Exceptions � Assertion � Definisi � Mengaktifkan dan menonaktifkan Assertions � Sintaks Assertion
Dasar exception
Jenis assertion
Contoh tema topik dan judul tentang pendidikan
Perhatikan topik topik berikut
Urutan teknik menyundul dengan awalan dan tanpa awalan
Jelaskan kegunaan sistem audio video
Apa yang dimaksud dengan computer dan dunia usaha
Distribusi frekuensi data kualitatif
Aturan produksi finite state automata
Apa perbedaan antara bcd dan bch
Apa yang dimaksud dengan keabsahan dan kuantitas pengukuran
Penerimaan sarana dan prasarana kantor
Market aspect meaning
Makna dasar adab dan peradaban
Apa yang dimaksud dengan diagram fasor
Pengertian proposal bisnis
Apa yang dimaksud dengan ukuran pemusatan
Contoh transformasi akar
Nilai ambang batas nab
Tipe data algoritma
Anharmonis
Classification of hotels based on ownership
Pengertian sosiologi pedesaan
Pengertian size reduction
Desain pengembangan produk
Masakan kontinental dumulai ketika bangsa....mengusai eropa
Masakan adalah
Definisi report text
Arti city ledger
Contoh sintesis perkuliahan
Gambar rangkaian kombinasional
Pengertian promkes adalah
Apa yang dimaksud dengan destination dalam komunikasi data
Pokok bahasan adalah
Pipeline adalah
Yang merupakan perangkat pheripheral adalah…