Bahasa Pemrograman 2.

dokumen-dokumen yang mirip
Pemrograman Berorientasi. Exception Handling

Pemrograman Berorientasi Object

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

Pemrograman Lanjut Exception Handling PTIIK

PRAKTIKUM 6 EXCEPTION

Percobaan 6 Exception

Definisi Eksepsi (exception)

PERCOBAAN 6 EXCEPTION

Exception Handling. Oleh : Agus Priyanto, M.Kom

Pemrograman Berorientasi Obyek. Exception Handling. Politeknik Elektronika Negeri Surabaya

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

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

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

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

Exception Handling. Prepared by Viska Mutiawani. 1

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

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

Pemrograman Berbasis Objek. Exception Handling. Politeknik Elektronika Negeri Surabaya

Exception Handling. Topik

Sesi 8. Event Handling & Exception Handling. Tujuan Intruksional

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

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

Praktikum 9 Exception Handling

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

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

03/04/2018. Pemrograman Berorientasi Object

PRAKTIKUM 17 MENANGANI EXCEPTION

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

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

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

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

1.Tujuan. 2. Latar Belakang

PRAKTIKUM PEMROGRAMAN OBJEK DENGAN JAVA MODUL KE-5 EXCEPTION HANDLING

Exception Handling and Multithreading

MODUL 9 EXCEPTION HANDLING

Exception Handling Lanjutan

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

MODUL 7 - EXCEPTION HANDLING

Modul 4 Exception, I/O, dan Operasi File

PRAKTIKUM I EXCEPTION HANDLING

PEMROGRAMAN JAVA : EXCEPTION

Exception. Oleh: Mike Yuliana PENS-ITS

IKG2I4 / Software Project I

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

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

PERTEMUAN 3 OBJEK DAN CLASS

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

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

IT652 Pemrograman Berorientasi Aspek. Ramos Somya

BAHASA PEMROGRAMAN JAVA

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

Penanganan Kesalahan

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

Penjebakan Eksepsi. Nur hasanah, M.Cs

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

PEMROGRAMAN BERORIENTASI OBJEK

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

Abstract Class dan Interface. Viska Mutiawani, M.Sc

Menangkap Kesalahan (Error Handling)

OPERASI FILE & EXCEPTION HANDLING. Herman Tolle

Algoritma Pemrograman 1

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

Satuan Acara Perkuliahan (SAP) UNIVERSITAS GUNADARMA

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

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

Praktikum Exception Handling

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

Pertemuan 2 Struktur Kontrol Percabangan

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

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

Pemrograman I. By : Sri Rezeki Candra Nursari SKS

INTERAKSI ANTAR OBJECT

Input Nilai tanpa Case String di Java

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

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

IT210 Pemrograman Visual. Ramos Somya

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

2 TIPE DATA DAN VARIABEL

DASAR PEMOGRAMAN JAVA

Pemrograman Dasar M E T H O D / F U N G S I

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

//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 {

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

Pengenalan Program Java

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

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

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

Modul Praktikum Pemrograman

BAB II VARIABEL DAN TIPE DATA

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

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

GUI, Ev e Ev n e t n Handling, Ex ception Handling in Java

JAVA BASIC PROGRAMMING Joobshet

IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

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

CHAPTER #5 DEBUGGING AND EXCEPTION HANDLING

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

Transkripsi:

Bahasa Pemrograman 2 Exception Handling anton@ukdw.ac.id

Exception Exception adalah dlhsebuah hindikasi imasalah lhyang muncul saat program dijalankan Exception adalah kondisi abnormal yang terjadi saatprogram dijalankan Saat program dijalankan run time k ( 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 k program tetap berjalan seakan akan tidak muncul masalah Faulttolerant tolerant : jikaterjadi masalah program tidak berhenti begitu saja

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

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

Overview Pada bh bahasa pemrograman procedural, error handling ditangani bersamaan dengan prosesdl dalam program yang dibuat (inline error proses handling) Inline error handling membuat program sulit untuk dibaca, dimodifikasi, debugging dan maintenance Pada Java, error handling dapat dilakukan bersamaan atau terpisah dari kode program utama

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

Overview Exception dapat dihasilkan dari java run time system maupun dihasilkan secaramanual dari kode program

Overview Exception yang dihasilkanilk oleh lhjava biasanya terjadi karena kesalahan dasar seperti melanggar kt ketentuan ketentuant kt t daribh bahasa pemrograman Java, pelanggaran pada batasan batasan yang telah didefinisikan dalam Java run time Exception yang dihasilkan secara manual (generated by code) digunakan untuk melaporkan atau menangkap exception yang terjadi pada suatu method

DivisionByZero Error

Overview Muncul Error: Stack trace: Exception in thread "main" java.lang.arithmeticexception: / by zero Java Result: 1 at example01.main.pembagian(main.java:18) at example01.main.main(main.java:13)

DivByZero with Exception

Example03 Demo Exception Flow

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

Overview 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 Java Exception Semua Java Exception merupakan keturunan (inherits) dari class Exception, baik secara langsung maupun tidak langsung

Hierarki Java Exception

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

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

Hierarki Exception Checked Exception : Java Compiler mengecek kd 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 khsuatu kode kd program menghasilkan exception atau tidak Berupa logic error IllegalArgumentException, NullPointerException, atau IllegalStateException

Unchecked Exception

Penggunaan Java Exception Terdapat t5 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 thfi 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 Java Exception

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

Penggunaan Java Exception throw melempar exception Bentuknya: throw ThrowableInstance; ThrowableInstance: merupakan object dari ThrowableInstance: merupakan object dari class Throwable atau turunannya

Penggunaan Java Exception

Penggunaan Java Exception throws : exception apa saja yang bisa dilempar oleh suatu method Bentuk umumnya : type method name(parameter list) throws exception list { } // body of method

Penggunaan Java Exception

Penggunaan Java Exception Java menyediakan fasilitas stack trace untuk menampilkanurutandariterjadinyaexception p Exception bisa terjadi jdi secara berantai (Chained Exception) Ch i d E ti t ti d i 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 untukkeperluan 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 E ti extends Exception { private String nama; InputJargonException(String n) { nama = n; } } public String tostring() { return "Ini adalah Exception InputJargonException :" + nama; }

Pembuatan Exception Baru public static tti 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; }

Class Diagram NEXT