Definisi Eksepsi (exception)

dokumen-dokumen yang mirip
Pemrograman Berorientasi Object

EXCEPTION HANDLING. 1. Mampu menangani eksepsi 2. Mengetahui dan memahami tentang multithreading 3. Dapat membuat program tentang exception handling

PENANGANAN EKSEPSI. class Exc0 { public static void main (String args[]) { int d = 0; int a = 42 / d; } }

PERTEMUAN 3 OBJEK DAN CLASS

03/04/2018. Pemrograman Berorientasi Object

IF PEMROGRAMAN LANJUT EXCEPTION. Oleh : Andri Heryandi, M.T.

4/11/2013. Topik. Exceptions dan Assertions Pengenalan Pemrograman 2. Topik. Topik EXCEPTIONS. Class Error dan Exception

BAB Tujuan. 2.2 Apa itu Exception? Pendahuluan Error dan Exception Classes

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

PRAKTIKUM 6 EXCEPTION

Exception adalah penanda bahwa kondisi/kejadian yang tidak diinginkan telah terjadi pada program kita. Ada 2 jenis exception (+1 Error):

MODUL 9 EXCEPTION HANDLING

Percobaan 6 Exception

Exception Handling. Oleh : Agus Priyanto, M.Kom

1.Tujuan. 2. Latar Belakang

Exception Handling. Prepared by Viska Mutiawani. 1

PERCOBAAN 6 EXCEPTION

Modul 4 Exception, I/O, dan Operasi File

MODUL 7 - EXCEPTION HANDLING

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

Penanganan Kesalahan

Pemograman Java. Yoannita, S.Kom. Argumen Command Line Exception Handling Package

Pemrograman Berorientasi. Exception Handling

public class Test { int i = 6; int j = 3; System.out.println(i/j); } Output :

PRAKTIKUM 17 MENANGANI EXCEPTION

IKG2I4 / Software Project I

Penjebakan Eksepsi. Nur hasanah, M.Cs

Exception. Oleh: Mike Yuliana PENS-ITS

SUMBER BELAJAR PENUNJANG PLPG

Obyektif : KONTROL ALUR PROGRAM

PEMROGRAMAN JAVA : EXCEPTION

Bahasa Pemrograman 2.

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

A. TUJUAN PEMBELAJARAN 1. Mengetahui cara menangani exception dengan cara melempar exception. 2. Mengetahui cara membuat sendiri class exception.

Pemrograman Berorientasi Obyek. Exception Handling. Politeknik Elektronika Negeri Surabaya

2 TIPE DATA DAN VARIABEL

PRAKTIKUM I EXCEPTION HANDLING

EXCEPTION HANDLING. Bug : kesalahan yang merupakan kelemahan dari perancangan atau implementasi

Topik. Penanganan Eksepsi. Menangkap Eksepsi. Catch Secara bertingkat. Melontarkan Eksepsi. Melontarkan kembali Eksepsi.

Pemrograman Lanjut Exception Handling PTIIK

Exception Handling. Topik

Struktur Kontrol Pemrograman Java : PERCABANGAN

Percabangan & Perulangan

Variabel tersebut seharusnya bisa dideklarasikan didalam try block dan block catch

Waktu Sisa : 0:43:4. Sukses. Kesalahan pada URL. File tidak lengkap. Kesalahan umum. Mengerjakan finally. Diluar block

Pemrograman Berbasis Objek. Exception Handling. Politeknik Elektronika Negeri Surabaya

BAB II VARIABEL DAN TIPE DATA

1. Apa yang harus dilakukan oleh programmer untuk menangani user-defined exception? Menuliskan exception sebagai start method

Sukses. Kesalahan pada URL. File tidak lengkap. Kesalahan umum

EXCEPTION. 2. Pada kondisi bagaimana klausa finally tidak akan dieksekusi? Kode didalam block try memiliki statement return

PEMOGRAMAN JAVA. Yoannita. Tipe Data (ii) : Array Exception Handling

BAHASA PEMROGRAMAN JAVA

Tidak ada satupun dari pilihan di atas yang benar karena checked exception tidak bisa ditulis

PEMAHAMAN DASAR DASAR JAVA

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Pertemuan 2 Struktur Kontrol Percabangan

PRAKTIKUM PEMROGRAMAN OBJEK DENGAN JAVA MODUL KE-5 EXCEPTION HANDLING

Modul Praktikum Pemrograman

if (ekspresi_boolean) { Pernyataan1; } else { Pernyataan2; }

Praktikum 9 Exception Handling

2. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo.

Modul Praktikum 3 Pemograman Berorientasi Objek

Tujuan Intruksional. Mampu menjelaskan tentang event handling Mampu menjelaskan tentang method Mampu menggunakan event handling Mampu membuat method

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

Modul 3 Flow Control dan Input

Bahasa Pemrograman 2.

Modul Tutorial C# 2 DASAR PEMROGRAMAN C# : STATEMENT DAN OPERATOR ENRICO BUDIANTO MICROSOFT INNOVATION CENTER UNIVERSITAS INDONESIA

Exception Handling Lanjutan

//PROGRAM 9-8. int[] A = new int[5]; // SALAH, karena tidak terdapat. class BanyakEksepsi { indeks ke-5. public static void test(int a, int b) { try {

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

Exception Handling and Multithreading

Abstract Class dan Interface. Viska Mutiawani, M.Sc

if (ekspresi_boolean) {

Sesi 8. Event Handling & Exception Handling. Tujuan Intruksional

Tipe if : If tanpa else (if) If dengan else (if-else) Nested if

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

Algoritma dan Pemrograman

Menangkap Kesalahan (Error Handling)

Percabangan & Perulangan

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

BAB 5 Mendapatkan Input dari Keyboard

BAB 5 Mendapatkan Input dari Keyboard

TPI4202 e-tp.ub.ac.id. Lecture 4 Mas ud Effendi

TPI4202 e-tp.ub.ac.id. Lecture 5 Mas ud Effendi

PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN JAVA. Petunjuk Penulisan Program Token Aturan Penamaan Identifier Lingkungan /Scope dari variabel Tipe Data (i) Yoannita

Paket dan Interface. 15 th week Estu Sinduningrum ST,MT

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

5. Consider the following line of code : byte ohmy What is the range of values that could be assigned to the variable ohmy?

Pemrograman Dasar I N T R O D U C T I O N T O J A V A

BAB 2 INPUT DARI KEYBOARD

Operator, Statement kondisional, dan Iterasi pada Java

Perulangan / Looping

Algoritma Pemrograman 1

PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN

TUGAS PROGRAM DIAGONAL, VETIKAL, DAN HORIZONTAL OPENGL (MENGGUNAKAN JAVA) NAMA : SYIFA MUTIARA SARI KELAS : 3KA23 NPM :

Pemrograman Database Java

Percabangan dan Perulangan

Transkripsi:

Penanganan Eksepsi

Definisi Eksepsi (exception) Exception adalah kondisi yang menyebabkan program menjadi hang atau quit dari alur normal yang telah ditentukan pada saat program dijalankan. Exception ini dipicu oleh runtime eror yakni eror yang terjadi pada saat program dieksekusi oleh interpreter. Pada umumnya eror dalam pemrograman dapat dibagi menjadi 3 kategori antara lain : Eror Kompilasi Eror ini terjadi pada saat program sedang dicompile yakni bila java compiler menemukan syntax atau aturan-aturan lainnya pada program. Biasanya eror ini relatif lebih mudah untuk ditelusuri (trace) karena compiler akan memberitahu pada baris program yang mana terdapat eror. EX: lupa membubuhkan notasi titik koma (;) pada akhir statement. Eror Runtime Kesalahan yang disebabkan oleh faktor eksternal lain seperti program gagal menemukan dan membuka file, kesalahan operasi (pembagian bilangan dengan nol), data yang di input tidak sesuai dengan tipe data yang diminta, dll

Kategori Error dalam Pemrograman 1. Eror Kompilasi Eror ini terjadi pada saat program sedang dicompile yakni bila java compiler menemukan syntax atau aturan-aturan lainnya pada program. Error ini relatif lebih mudah untuk ditelusuri (trace) karena compiler akan memberitahu pada baris program yang mana terdapat eror. lupa membubuhkan notasi titik koma (;) pada akhir statement.

Kategori Error dalam Pemrograman 2. Eror Runtime Kesalahan yang disebabkan oleh faktor eksternal lain seperti program gagal menemukan dan membuka file, kesalahan operasi (pembagian bilangan dengan nol), data yang di input tidak sesuai dengan tipe data yang diminta, dll 3. Error Logic Kesalahan dalam logika program.

Eksepsi yang tidak dapat ditangkap Eksepsi yang tidak dapat ditangkap class Exc0 { public static void main (String args[]) { int d = 0; int a = 42 / d; }} Keluaran dari program diatas : Exception in thread main java.lang.arithmeticexception:/by zero at main.main(main.java:4) java result : 1 Saat runtime java mencoba meng-eksekusi pembagian, akan terlihat bahwa pembaginya adalah nol, dan akan membentuk objek eksepsi baru yang menyebabkan program terhenti dan harus berurusan dengan keadaan kesalahan tersebut.

Penanganan eksepsi pada java diatur dengan empat kata kunci, yaitu : Try Catch Throw Finally Eksepsi yang tidak dapat ditangkap class Exc0 { public static void main (String args[]) { int d = 0; int a = 42 / d; }} Keluaran dari program diatas : Exception in thread main java.lang.arithmeticexception:/by zero at main.main(main.java:4) java result : 1

Penanganan eksepsi pada Java Try Catch Throw Finally

Try dan Catch Kata kunci Try digunakan untuk menentukan suatu blok program yang harus dijaga terhadap semua eksepsi. Kata kunci Catch digunakan untuk menentukkan tipe eksepsi yang akan ditangkap. Contoh : class Exc2 { public static void main (String args[]) { try{intd=0;inta=42/d;} catch (ArithmeticException e) { System.out.println( Division By Zero ); }}} Outputnya: Division By Zero

Finally Analogikan proses exception Try-Catch dengan mekanisme penyeleksian kondisi switch-case. Switch-case akan memeriksa nilai suatu variable dan bila ditemukkan suatu kondisi yang telah ditetapkan maka variable itu akan diproses. Dalam switch-case terdapat keyword default yang digunakan sebagai blok default bila tidak ditemukkan kondisi yang telah ditetapkan. Try-catch memiliki keyword Finally yang hampir sama fungsinya dengan default pada switch-case. Ada 3 skenario pemrosesan dengan keyword finally yaitu : o Bila tidak terjadi exception, blok finally akan dieksekusi. Setelah selesai, interpreter akan mengeksekusi staement selanjutnya. o Bila terjadi exception, interpreter akan berhenti mengeksekusi statement dalam blok try berikutnya, kemudian interpreter akan mencari catch yang bersesuaian, bila ditemukan interpreter akan mengeksekusi catch & finally. o Bila exception terjadi namun tidak ada catch yang bersesuaian maka statementstatement try berikutnya yang masih tersisa tidak akan dieksekusi, selanjutnya interpreter akan mengeksekusi blok finally.

Contoh : class finallydemo { static void proca() { try { System.out.println( Inside proca.. ); throw new RuntimeException( Demo ); } finally { System.out.println( proca is finally ); } } static void procb() { try { System.out.println( Inside procb.. ); return; } finally { System.out.println( procb is finally ); } } public static void main(string args[]) { try{proca();} catch (Exception e){ }; procb(); } } Output : Inside proca.. proca is finally Inside procb.. procb is finally

Throw Digunakan untuk melemparkan suatu eksepsi. Contoh : class throwdemo { static void demoproc() { try { throw new NullPointerException( demo ); } catch (NullPointerException e) { System.out.println( caught inside demoproc ); throw e; } } public static void main (String args[]) { try { demoproc(); } catch (NullPointerException e) { System.out.println( recaugt : + e); } } } Output : caught inside demoproc recaught : java.lang.nullpointerexception : demo

TERIMA KASIH