Pemrograman Berorientasi. Exception Handling

dokumen-dokumen yang mirip
Bahasa Pemrograman 2.

Pemrograman Berorientasi Object

Pemrograman Lanjut Exception Handling PTIIK

Definisi Eksepsi (exception)

PRAKTIKUM 6 EXCEPTION

Percobaan 6 Exception

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

PERCOBAAN 6 EXCEPTION

Exception Handling. Oleh : Agus Priyanto, M.Kom

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

Exception Handling. Prepared by Viska Mutiawani. 1

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

03/04/2018. Pemrograman Berorientasi Object

Variabel tersebut seharusnya bisa dideklarasikan didalam try block dan block catch

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

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

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

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

Pemrograman Berorientasi Obyek. Exception Handling. Politeknik Elektronika Negeri Surabaya

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

PRAKTIKUM 17 MENANGANI EXCEPTION

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

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

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

Sesi 8. Event Handling & Exception Handling. Tujuan Intruksional

Modul 4 Exception, I/O, dan Operasi File

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

Exception Handling. Topik

MODUL 7 - EXCEPTION HANDLING

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

Praktikum 9 Exception Handling

MODUL 9 EXCEPTION HANDLING

1.Tujuan. 2. Latar Belakang

Exception Handling and Multithreading

Pemrograman Berbasis Objek. Exception Handling. Politeknik Elektronika Negeri Surabaya

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

PRAKTIKUM I EXCEPTION HANDLING

PEMROGRAMAN JAVA : EXCEPTION

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

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

Exception Handling Lanjutan

PERTEMUAN 3 OBJEK DAN CLASS

PRAKTIKUM PEMROGRAMAN OBJEK DENGAN JAVA MODUL KE-5 EXCEPTION HANDLING

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

BAHASA PEMROGRAMAN JAVA

IKG2I4 / Software Project I

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

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

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

Penjebakan Eksepsi. Nur hasanah, M.Cs

Penanganan Kesalahan

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

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

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

PEMROGRAMAN BERORIENTASI OBJEK

IT652 Pemrograman Berorientasi Aspek. Ramos Somya

Exception. Oleh: Mike Yuliana PENS-ITS

Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs.

SATUAN ACARA PERKULIAHAN (SAP) Dosen menerangkan materi kuliah. Mahasiswa duduk berkelompok dan saling membantu memahami penjelasan dosen

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

I. JUDUL. Exception Handling. Jenis-Jenis error. Exception PRAKTIKUM 12. Exception Handling

Satuan Acara Perkuliahan (SAP) UNIVERSITAS GUNADARMA

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

SUMBER BELAJAR PENUNJANG PLPG

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

CHAPTER #5 DEBUGGING AND EXCEPTION HANDLING

Debugging sebetulnya sudah sering kita lakukan, ketika kita membuat suatu program kemudian kita jalankan dengan menekan tombol F5 ataupun mengklik

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

Abstract Class dan Interface. Viska Mutiawani, M.Sc

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

Pemrograman I. By : Sri Rezeki Candra Nursari SKS

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

IT210 Pemrograman Visual. Ramos Somya

TUJUAN. Memahami Koneksi dan Pemrosesan Basis Data di Java Memahami JDBC Menggunakan MySQL pada program Java

Algoritma Pemrograman 1

Pertemuan 2 Struktur Kontrol Percabangan

BAB 5 Mendapatkan Input dari Keyboard

2 TIPE DATA DAN VARIABEL

SATUAN ACARA PERKULIAHAN MATA KULIAH: Algoritma & Pemrograman 3 Strata/Jurusan : S1/Sistem Komputer

Menangkap Kesalahan (Error Handling)

INTERAKSI ANTAR OBJECT

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

SATUAN ACARA PERKULIAHAN MATA KULIAH: Algoritma & Pemrograman 3 Strata/Jurusan : D3/Teknik Komputer

Pengenalan Program Java

Modul Praktikum Pemrograman

Pengenalan JavaScript

OPERASI FILE & EXCEPTION HANDLING. Herman Tolle

SATUAN ACARA PERKULIAHAN (SAP) Kuliah mimbar Papan tulis dan LCD Proyektor

Input Nilai tanpa Case String di Java

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

BAB II VARIABEL DAN TIPE DATA

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

Didalam menampilkan peta yang sudah kita buat, kita akan menggunakan Slick2D sebagai sebuah frameworknya.

JAVA BASIC PROGRAMMING Joobshet

TIPE DATA PADA JAVA. Pertemuan (K-04/L-04)

TPI4202 e-tp.ub.ac.id

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

DASAR PEMOGRAMAN JAVA

Network Programming 2010 Jaringan & Aplikasinya. Husni Husni.trunojoyo.ac.id

Transkripsi:

Pemrograman Berorientasi Obyek Exception Handling anton@ukdw.ac.id

Exception Exception adalah sebuah indikasimasalah yang muncul saat program dijalankan Exception adalah kondisi abnormal yang terjadi saat program dijalankan Saat program dijalankan run-time Exception untuk run-time error (run-time error management)

Exception Exception : eksepsi, problem yang muncul jarang terjadi (infrequently) Exception perlu ditangani (exception handling) Exception handling: memungkinkan program tetap berjalan seakan-akan tidak muncul masalah Fault tolerant : jika terjadi masalah program tidak berhenti begitu saja

Exception Tanpa Exception Handling Eksekusi berhenti Dengan Exception Handling Tidak dijalankan error Eksekusi tidak berhenti

Pseudocode Execption pseudocode Lakukan proses input Jika input tidak valid lakukan errorprocessing Lakukan proses penghitungan Jika proses penghitungan gagal lakukan error-processing Lakukan proses penampilan hasil

Exception pada Java Pada bahasa pemrogramanprocedural, error handling ditangani bersamaan dengan prosesproses dalam program yang dibuat (inline error handling) Inline error handling membuat program sulit untuk dibaca, dimodifikasi, debugging dan maintenance Pada Java, error handling dapat dilakukan bersamaan(inline) atauterpisah dari kode program utama

Exception pada Java Java Exception: object yang menggambarkan sebuah kondisi eksepsional (exception) pada suatu bagian kode Saat terjadi exception, sebuah object yang mewakili exception tersebut dibuat dan dilemparkan (thrown) dari method dimana exception tersebut terjadi Method tersebut dapat memilih untuk menghandle sendiri exception tersebut atau melemparkannya pada yang lain

Exception pada Java Exception dapat dihasilkan dari java run-time system maupun dihasilkan secara manual dari kode program

Exception pada Java Exception yang dihasilkan oleh Java biasanya terjadi karena kesalahan dasar seperti melanggar ketentuan-ketentuan dari bahasa pemrograman Java, pelanggaran pada batasan-batasan yang telah didefinisikan dalam Java run-time Exception yang dihasilkan secara manual (generated by code) digunakan untuk melaporkanataumenangkapexception yang terjadi pada suatu method

DivisionByZero Error

Muncul Error: Overview

DivByZero with Exception

Hasil

Example03 Demo Exception Flow

Kapan exception dapat digunakan? Exception handling untuk synchronous error Error yang terjadi saat sebuah perintah dijalankan (run) Tidak dapat digunakan untuk asynchronous error Error yang terjadi di luar program

Jenis Error Synchronous Error : division by zero, out of bound array, overflow, invalid method parameter, etc Asynchronous Error : Network transfer, mouse clicks, keystrokes, etc yang terjadi secara paralel dan independen terhadap aliran kontrol program (program flow control)

Hierarki Exception Turunan dari class Throwable ada 2, yaitu Exception dan Error Exception: dapat ditangani oleh kode program dan eksekusi program dapat dilanjutkan Error: terjadi kesalahan pada Java Virtual Machine, kesalahan yang ditimbulkan oleh environment/system, tidak dapat dihandle oleh program

Hierarki Java Exception Semua Java Exception merupakan keturunan (inherits) dari class Exception, baik secara langsung maupun tidak langsung

Hierarki Java Exception unchecked unchecked unchecked

Hierarki Exception Seluruh class yang merupakan turunan dari class Exceptiontapi bukan turunan dari RuntimeException merupakan checked Exception Seluruh class yang merupakan turunan dari class Error merupakan unchecked Exception

Hierarki Exception Checked Exception : Java Compiler mengecek kode program, apakah suatu method mungkin menghasilkan exception, apakah exception tersebut sudah ditangkap (catch) atau dilempar (throws) invalid user input, database problems, network outages, absent files Unchecked Exception : Java Compiler tidak mengecek apakah suatu kode program menghasilkan exception atau tidak Berupa logic error IllegalArgumentException, NullPointerException, atau IllegalStateException

Unchecked Exception

Penggunaan Java Exception Terdapat 5 keywords: try, catch, finally, throw, throws try { } catch (Exception e) { } finally { }

Penggunaan Java Exception Dengan try-catch try { } catch (Exception e) { }

Penggunaan Java Exception Dengan try-catch-finally try { } catch (Exception e) { } finally { }

Penggunaan Java Exception Block finally : pasti dijalankan dalam semua kondisi (terjadi exception atau tidak) Digunakan untuk menanggulangi resource leak (misal: kehabisan memory, deadlock/starvation) Contoh: network error, file handle error, etc

Penggunaan try catch finally

Penggunaan Java Exception Selain try-catch-finally, terdapat 2 keyword lagi: throw digunakan untuk melempar exception throws digunakan untuk mendeklarasikan exception apa saja yang bisa dilempar / ditangani

Penggunaan Java Exception throw melempar exception - Dilemparkan di body method - Cuma satu Exception Bentuknya: throw ThrowableInstance; ThrowableInstance: merupakan object dari class Throwable atau turunannya

Penggunaan Java ExceptionThrow

Hasil

Penggunaan Java Exception throws : exception apa saja yang bisa dilempar oleh suatu method Dilemparkan pada judul method Bisa lebih dari satu Exception Bentuk umumnya : type method-name(parameter-list) throws exceptionlist { // body of method }

Contoh tanpa Throws

Error terjadi unreported exception IllegalAccessException; must be caught or declared to be thrown throw new IllegalAccessException("demo"); ^ exception IllegalAccessException is never thrown in body of corresponding try statement } catch (IllegalAccessException ex) { ^

Solusi program tidak dapat dikompilasi, ada dua cara mengatasinya: 1. di catch di method throwone, ATAU 2. di set ke throws lalu dicatch di method main

Solusi 1

Solusi 2

Penggunaan Java Exception Java menyediakan fasilitas stack-trace untuk menampilkan urutan dari terjadinya exception Exception bisa terjadi secara berantai (Chained Exception) Chained Exception : urutan exception dari method ke method

Penggunaan Java Exception Demo Chained Exception (Example07)

Pembuatan Exception Baru Selain menggunakan Exception yang sudah didefinisikan oleh library Java (bawaan Java), anda juga dapat membuat exception sendiri untuk keperluan tertentu Harus merupakan turunan dari class Exception

Pembuatan Exception Baru Misal anda ingin meminta input jargon ( client ) Definisikan sebuah exception baru (misal namanya: InputJargonException Exception terjadi apabila inputnya bukan client

Pembuatan Exception Baru class InputJargonException extends Exception { private String nama; InputJargonException(String n) { nama = n; } } public String tostring() { return "Ini adalah Exception InputJargonException :" + nama; }

Pembuatan Exception Baru public static String inputhuruf() throws InputJargonException { Scanner input = new Scanner(System.in); System.out.print("Masukkan jargon : "); String hasil = input.next(); System.out.println("Anda memasukkan " + hasil); if(hasil.equalsignorecase("client") == false) throw new InputJargonException("Jargon Error"); return hasil; }

Hasil

JAR dan JDBC NEXT