PEMROGRAMAN KOMPUTER 2 4 SKS 2 TEORI DAN 2 PRAKTEK NANDANG HERMANTO. S.Kom.

Slides:



Advertisements
Presentasi serupa
EXCEPTION HANDLING.
Advertisements

Pemrograman Berorientasi Objek (Project)
Java Fundamentals: 5. Java Advanced
Try, Catch, Finally Throws
 public static void main(String[] args) {  int bil1=3;  do {  System.out.print(bil1+",");  bil1=bil1+4;  }  while(bil1
Java Progamming Operasi I/O
Pemrograman Berorientasi Objek
Abstract Class & Interface
Workshop SCS: Java Game Programming
Dasar Exception Handling
Flow Control & Exception Handling
Pemrograman Berorientasi Objek
Flow Control & Exception Handling
SLIDE OTOMATIS PINDAH DALAM WAKTU 4-5 MENIT. A:kiriB:kanan Deklarasikan sebuah variabel dengan nama ‘isi’ yang mempunyai type array of double dengan ukuran.
PEMROGRAMAN KOMPUTER 2 4 SKS 2 TEORI DAN 2 PRAKTEK
Nandang Hermanto PK2 Pertemuan 3. Perulangan Pernyataan while Pernyataan do..while Pernyataan for.
MATA KULIAH : PEMROGRAMAN 3 JAVA PROGRAMMING (JSE)
Pemrograman Berbasis Obyek Oleh Tita Karlita
Pemrograman Berorientasi Objek
Dasar exception handling
Pemrograman Berorientasi Objek 1
Mendapatkan Input dari Keyboard
Struktur Kode Aplikasi Java (1)
As’ad Djamalilleil Function (method) As’ad Djamalilleil
EXCEPTION TRY-CATCH-FINALLY
PELATIHAN JAVA FUNDAMENTAL
Diberikan pada Kuliah Sela Teknik Informatika - Universitas Muhammadiyah Malang Tahun 2011.
INHERITANCE (Oleh : Nur Hayatin, S.ST)
Exceptional Pendahuluan Bugs dan error dalam sebuah program sangat sering muncul meskipun program tersebut dibuat oleh programmer berkemampuan tinggi.
Pertemuan 12 Pemrograman Berbasis Obyek Oleh Tita Karlita
Do you remember this?.  Strategy  Concrete Strategy  Context  Client Strategy Pattern consists of..
- PERTEMUAN 4- EXCEPTION
MATERI IV OOP (Object Oriented Programming) Chapter II.
Dasar exception handling
Try, Catch, Finally Throws
Pemrograman berbasis obyek
Algoritma & Pemrograman 1
Penanganan Eksepsi.
Exception Handling (Penanganan Error)
PEMROGRAMAN VISUAL II Agenda Perkuliahan :
Penanganan Eksepsi Disusun Oleh: Reza Budiawan Untuk:
Inner Class dan Eksepsi (Exception)
Konsep Dasar Exception Handling
Pertemuan 5 Tipe Data, Operator, Tata Bahasa
Penanganan Eksepsi Pertemuan Ke- 9.
BAB XI EXCEPTION HANDLING.
Dosen : Bella Hardiyana, S. Kom
Exception dan Assertion
Tugas Minggu Ke 9 PBO Siti Halisah
Identifier, Keyword, dan Tipe data
Tipe Data, Variabel, dan Operator
Exception Handling (Penanganan Error)
Pemrograman Berorientasi Objek
Tipe Data, Variabel, dan Operator
ASWAR R. Universitas Negeri Makassar
Pendahuluan PBO.
Pemrograman Berorientasi Objek 1
Exception Sussi.
Flow Control & Exception Handling
Exception Sussi.
Exception Sussi.
Pemrograman Berorientasi Object
Pemrograman Berorientasi Obyek
Dasar exception handling
Pemrograman Berorientasi Object
Pertemuan 9 PENANGAN EKSEPSI
Penanganan Exception di Java
Tipe Data, Variabel, dan Operator
Pengenalan Pemrograman 1
DPH1C4 Pemrograman berorientasi Obyek
Transcript presentasi:

PEMROGRAMAN KOMPUTER 2 4 SKS 2 TEORI DAN 2 PRAKTEK NANDANG HERMANTO. S.Kom

Bug dan Exception Kesalahan merupakan bagian normal dari pemrograman Jenis kesalahan – Salah penulisan (Syntax errors /compile errors) – Logic errors (bug)  kesalahan logika, menghasilkan output/performa yang menyimpang,kesalahan yang merupakan akibat dari kelemah perancangan atau implementasi – Runtime errors (Exception)  operasi yang salah saat eksekusi program, bisa berakibat program berakhir / berhenti

Salah penulisan (Syntax errors /compile errors) System.out.prit(“Nandang Hermanto”); Seharusnya System.out.println(“Nandang Hermanto”);

Logic errors (bug) Saat program dijalankan tidak akan terjadi salah, tapi coba perhatikan apa yang salah dengan program diatas

Runtime errors (Exception) Scanner baca = new Scanner(System.in); int bil1 = 0, bil2 = 0; double hasil = 0; int lagi = 1; while (lagi==1){ System.out.print("Masukan bilangan bertama :"); bil1 = baca.nextInt(); System.out.print("Masukan bilangan kedua :"); bil2 = baca.nextInt(); hasil = bil1 / bil2; System.out.println("Hasil bagi adalah : " + hasil); System.out.println(""); System.out.print(" 1 untuk coba lagi 2 untuk mengakhiri : "); lagi = baca.nextInt(); } Apa yang terjadi jika bilangan pertama diisi 1 dan bilangan kedua diisi dengan 0 (nol) Bagaimana cara mengatasinya ?

Contoh cara mengatasinya Scanner baca = new Scanner(System.in); int bil1 = 0, bil2 = 0; double hasil = 0; int lagi = 1; int ulangi; while (lagi == 1) { do { System.out.print("Masukan bilangan bertama : "); bil1 = baca.nextInt(); System.out.print("Masukan bilangan kedua : "); bil2 = baca.nextInt(); try { hasil = bil1 / bil2; ulangi = 0; } catch (Exception e) { System.out.println("Terjadi kesalahan " + e.getMessage() + " silakan coba lagi "); ulangi = 1; } } while (ulangi == 1); System.out.println("Hasil bagi adalah : " + hasil); System.out.println(""); System.out.print(" 1 untuk coba lagi 2 untuk mengakhiri : "); lagi = baca.nextInt(); }

Exception Handling di Java Try Catch Finally Throw Throws

Ringkasan cara kerjanya Program yang akan dimonitor exception-nya diletakan di blok try Jika exception terjadi di blok try, exception itu dilemparkan Exception yang terjadi di tangkap dengan menggunakan catch kemudian ditangani dengan kode program yang rasional Exception yang dibangkitkan sistem secara otomatis akan dilempar oleh sistem java, sedangkan untuk exception yang dilempar secara manual digunakan keyword throw, exception yang dilempar oleh metode harus di spesisikasikan dengan keyword throws Setiap kode yang harus di eksekusi baik terjadi exeption ataupun tidak diletakan di blok finally

Exception dapat dibangkitkan oleh java run- time system atau dibangkitkan manual oleh kode program – Exception yang dilempar java run-time system berhubungan dengan kesalahan fundamental melanggar aturan-aturan bahasa java – Exception yang dihasilkan secara manual umumnya digunakan untuk melaporkan kondisi kesalahan ke pemanggil metode Exception merupakan klas object spesial yang menangani seluruh kesalahan java, terletak di paket java.lang

Menangkap Exception Bentuk umum : try { //pemanggilan method yg mungkin menghasilkan exception //blok statement yg mungkin menghasilkan exception } catch(TipeException1 namaObjek) { // penanganan salah-satu jenis exception } catch(TipeException2 namaObjek) { // penanganan salah-satu jenis exception } catch(TipeExceptionN namaObjek) { // penanganan salah-satu jenis exception } finally { // blok yang harus dieksekusi }

Jika pada Blok try tidak ada kesalahan, maka blok catch tidak ada yang dieksekusi dan langsung mengeksekusi blok finally Jika terjadi kesalahanpada blok try, maka salah satu blok catch dieksekusi, kemudian blok finally dieksekusi.

Jenis-Jenis Exception – Ada kelompok exception yang diperiksa oleh interpreter, apakah akan ditangani atau dilempar, namun ada pula exception yang akan tidak diperiksa interpreter. – Disamping itu programmer dibolehkan membuat exception sendiri dengan cara extends atau implements kelas Exception

Tabel Checked Exception No Exception Deskripsi 1ClassNotFoundExceptionKelas tidak ditemukan 2CloneNotSupportedExceptionmelakukan clone objek yang tidak mengimplementasikan interface Cloneable 3IllegalAccessExceptionPengaksesan ke kelas ditolak 4InstantiationExceptionMenciptakan objek dari kelas abtract ataupun dari interface 5InterruptedException Thread telah diinterupsi oleh thread lain 6NoSuchFieldException Field yang diminta tidak ada 7NoSuchMethodException Method yang diminta tidak ada

Tabel Uncheked Exception NoExceptionDeskripsi 1AritmaticExceptionKesalahan Aritmatik seperti pembagian dengan nol 2ArrayIndexOutBoundsExceptionIndex array di luar batas 3ArrayStoreExceptionPemberian nilai ke elemen array tidak sesuai dengan tipenya 4ClassCastExceptionCast yang tidak sah 5IllegalArgumentExceptionArgument illegal 6IllegalMonitorStateExceptionOperasi monitor illegal seperti menunggu di thread yang tidak terkunci 7IllegalStateExceptionLingkungan atau aplikasi state yang tidak benar 8IllegalThreadStateExceptionOperasi yang diminta tidak kompatibel dengan state thread saat itu 9IndexOutOfBoundExceptionIndeks di luar batas

Tabel Uncheked Exception 10NegativeArraySizeExceptionArray diciptakan dengan ukuran negatif 11NullPointerExceptionPenggunan null yang tidak sah 12NumberFormatExceptionKonversi yang tidak sah dari string ke format numerik 13SecurityExceptionMelanggar aturan security 14StringIndexOutOfBoundsIndex di luar batas string 15UnsupportedOperationExceptionDitemukan operasi yang tidak didukung

Melempar Exception dengan Keyword Throw int bil1 = 5; int bil2 = 0; try { if(bil2<1) { throw new Exception("Pembagian dengan Nol"); } } catch (Exception e) { System.out.println(" Terjadi kesalahan berupa " + e.getMessage()); }

Membuat Exception sendiri public class Pembagiandengannol extends Exception{ public Pembagiandengannol() { super("Pembagian dengan nol tidak diperbolehkan"); } public Pembagiandengannol(String message) { super(message); } int bil1 = 5; int bil2 = 0; try { if (bil2 < 1) { throw new Pembagiandengannol(); } System.out.println(bil1 / bil2); } catch (Pembagiandengannol e) { System.out.println("Error " + e.getMessage()); } Buat class turunan dari class Exception Gunakan class exception pada class yang lain