SlideShare a Scribd company logo
4
Most read
6
Most read
13
Most read
[PBO] Pertemuan 10 - Exception & Error Handling
[PBO] Pertemuan 10 - Exception & Error Handling
• Dalam dunia pengembangan software tentunya programmer tidak ane dengan istilah
ERROR
• Hal tersebut tidak bisa dihindari karena hal ini dapat terjadi diluar perkiraan dan
mungkin bisa menuntun perangkat lunak ke dalam kondisi error yang disebut
EXCEPTION.
• EXCEPTION adalah suatu kejadian/event yang terjadi ketika eksekusi program yang akan
mengganggu alur program.
• Dengan exception, alur program dapat diatur agar melakukan suatu proses ketika
sebuah error terjadi.
• Contoh kejadian:
• Pembagian dengan angka0
• File tidak ditemukan
• Koneksi jaringan terputus ketika membaca data
Oleh : Andri Heryandi, M.T.
Oleh : Andri Heryandi, M.T.
• Nama class exception yang terjadi
ArithmeticException
• Terdapat informasi lokasi terjadinya ERROR
(menuliskan hasil dan program ditutup
normal) tidak tereksekusi karena program di
terminate
Oleh : Andri Heryandi, M.T.
Penanganan exception dapat dilakukan dengan menggunakan
1. Block try catch
2. Block try catch finally
Oleh : Andri Heryandi, M.T.
• Terdapat baris perintah yang setelah lokasi terjadinya
ERROR (menuliskan hasil dan program ditutup
normal) TETAP terekseksui walaupun terjadi
exception
Oleh : Andri Heryandi, M.T.
Jika sebuah/sekumpulan statement memiliki banyak kemungkinan exception, maka untuk
penanganan tiap exception bisa menggunakan block try yang memiliki banyak catch.
ContohKasus:
Pada contoh program sebelumnya(class ContohException2) adabariskb.nextInt() yang
berguna untuk membaca sebuah integer dari keyboard. Bagaimana kalau yang diinputkan
bukan integer, tapi string?
Oleh : Andri Heryandi, M.T.
Solusi :
Berarti ada 2 exception yang harus dihandle dalam program tersebut yaitu Arithmetic
Exception dan Input Mismatch Exception
Oleh : Andri Heryandi, M.T.
Oleh : Andri Heryandi, M.T.
Jika sebuah exception terjadi, maka baris-baris di blok try setelah
baris terjadinya exception pasti tidak akan tereksekusi karena alur
program akan pindah ke blok catch. Jika baris-baris dibawah lokasi
exception ingin tetap dijalankan ketika terjadi exception ataupun
tidak terjadi exception, maka tulislah perintah-perintah tersebut di
bagian finally.
• Finally ditulis di bawah catch.
• Blok finally PASTI dieksekusi walaupun tidak terjadi exception.
• Blok finally biasanya digunakan untuk melepas resource (tutup
file, tutup koneksi ke jaringan, free memory dll).
Oleh : Andri Heryandi, M.T.
• “Tutup scanner” akan dieksekusi baik
ketika terjadi exception atau tidak
Oleh : Andri Heryandi, M.T.
Tidak semua exception yang telah didefinisikan oleh Java mendukung semua kebutuhan kita.
Contoh Kasus:
• Untuk nilai suatu matakuliah, nilai hanya boleh 0 sampai 100.
• Java tidak memiliki exception untuk menangani exception tersebut.
Solusi: Buatlah exception sendiri
Cara membuat exception sendiri:
Buat sebuah class turunan dari Exception atau Runtime Exception
• Exception yang menggunakan super class Exception disebut sebagai checked exception. Jika
suatu method melemparkan exception jenis ini, maka pemanggilan method ini harus dalam
blok try-catch.
• Exception yang menggunakan super class Runtime Exception disebut sebagai unchecked
exception. Jika suatu method melemparkan exception jenis ini, maka pemanggilan method ini
tidak harus dalam blok try-catch.
Oleh : Andri Heryandi, M.T.
Oleh : Andri Heryandi, M.T.
• Throwing Exception adalah suatu operasi melemparkan sebuah
exception ketika sebuah exception terjadi.
• Perintah untuk melempar sebuah exception adalah throw.
• Untuk mendefinisikan sebuah method bisa melemparkan exception
tertentu, maka gunakan keyword throws di pendefinisian method,
diikuti dengan class exceptionnya.
Oleh : Andri Heryandi, M.T.

More Related Content

PDF
Pertemuan 1 konsep dasar pemrograman berorientasi objek
PDF
[PBO] Pertemuan 6 - Interface
PPTX
Materi 3 Finite State Automata
PPTX
Jenis dan proses interupsi
DOCX
Tugas mandiri struktur data
PPTX
Materi : Struktur Data (1 Pengantar)
PDF
Penjadwalan.pdf
PDF
[PBO] Pertemuan 5 - Inheritance
Pertemuan 1 konsep dasar pemrograman berorientasi objek
[PBO] Pertemuan 6 - Interface
Materi 3 Finite State Automata
Jenis dan proses interupsi
Tugas mandiri struktur data
Materi : Struktur Data (1 Pengantar)
Penjadwalan.pdf
[PBO] Pertemuan 5 - Inheritance

What's hot (20)

PDF
[RPL2] Class Diagram dan Relasinya (2)
PPT
Tugas IMK : Ragam Dialog
PDF
Modul Ajar Basis Data
PPT
Operator dalam Pemrograman
PDF
Contoh peyelesaian logika fuzzy
DOCX
Cara membuat fungsi dan prosedur pada java
PPSX
03 pseudocode
PDF
Struktur Runtunan Algoritma
PPTX
Pertemuan 9 pengalamatan
PPTX
Insertion sort
PPT
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada Java
PPTX
Pewarisan (inheritance) pada JAVA
DOCX
Konsep-Konsep Dasar Pengembangan Perangkat Lunak dan Gim(Pert 1 - 3) PPLG-MA...
PDF
P9 enkapsulasi
PPT
Modul 4 representasi pengetahuan
PDF
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
PDF
Lembar penilaian rekayasa perangkat lunak baru
PDF
Soal uas imk bsi
PDF
Makalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
PDF
Pertemuan 4-5-6 Metode Pelacakan dan Pencarian
[RPL2] Class Diagram dan Relasinya (2)
Tugas IMK : Ragam Dialog
Modul Ajar Basis Data
Operator dalam Pemrograman
Contoh peyelesaian logika fuzzy
Cara membuat fungsi dan prosedur pada java
03 pseudocode
Struktur Runtunan Algoritma
Pertemuan 9 pengalamatan
Insertion sort
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada Java
Pewarisan (inheritance) pada JAVA
Konsep-Konsep Dasar Pengembangan Perangkat Lunak dan Gim(Pert 1 - 3) PPLG-MA...
P9 enkapsulasi
Modul 4 representasi pengetahuan
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Lembar penilaian rekayasa perangkat lunak baru
Soal uas imk bsi
Makalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
Pertemuan 4-5-6 Metode Pelacakan dan Pencarian
Ad

Similar to [PBO] Pertemuan 10 - Exception & Error Handling (20)

PDF
OOP - Exception
PPTX
16. error handling
PPT
pbo 8 ervan
DOCX
Tugas praktek 3 Pemrograman Berorientasi Objek
PDF
14741 9 exception & assertion
PDF
Jeni Intro1 Bab12 Dasar Exception Handling
PDF
Jeni intro1-bab12-dasar exception handling
PDF
1 exception handling
PDF
Penanganan kesalahan menangkap exception
PDF
8_Penangan Eksepsi.pdf
PDF
8_Penangan Eksepsi.pdf
PDF
8 penangan eksepsi
PDF
PDF
6497 13 penanganan pesan exception
PPT
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...
DOC
18314 minggu 12 penanganan kesalahan menangkap exception
DOC
17728 minggu 12 penanganan kesalahan menangkap exception
PDF
Java (Netbeans) - Exception handling - Object Oriented Programming
PDF
Jeni Intro2 Bab02 Exception Dan Assertion
PDF
29934 materi dan tugas pbo lanjut exception_
OOP - Exception
16. error handling
pbo 8 ervan
Tugas praktek 3 Pemrograman Berorientasi Objek
14741 9 exception & assertion
Jeni Intro1 Bab12 Dasar Exception Handling
Jeni intro1-bab12-dasar exception handling
1 exception handling
Penanganan kesalahan menangkap exception
8_Penangan Eksepsi.pdf
8_Penangan Eksepsi.pdf
8 penangan eksepsi
6497 13 penanganan pesan exception
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...
18314 minggu 12 penanganan kesalahan menangkap exception
17728 minggu 12 penanganan kesalahan menangkap exception
Java (Netbeans) - Exception handling - Object Oriented Programming
Jeni Intro2 Bab02 Exception Dan Assertion
29934 materi dan tugas pbo lanjut exception_
Ad

More from rizki adam kurniawan (20)

PDF
[MPPL] Managemen Sumber Daya Manusia
PDF
[RPL2] Pengujian Perangkat Lunak
PDF
[RPL2] Growth Hacking
PDF
[RPL2] Bisnis Model & Market Analysis
PDF
[RPL2] Deployment Diagram
PDF
[RPL2] Package Diagram
PDF
[RPL2] Sequence Diagram
PDF
[RPL2] Class Diagram dan Konsep Object Oriented (1)
PDF
[PBO] Pertemuan 10 - Generic Programming & Collection
PDF
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
PDF
[PBO] Pertemuan 12 - Pemrograman Android
PDF
[PBO] Pertemuan 11 - GUI Java Desktop
PDF
[PBO] Pertemuan 10 - Pemrograman Database (2)
PDF
[RPL2] Design Sprint
PDF
[PBO] Pertemuan 10 - Pemrograman Database (1)
PDF
[PBO] CARA BIKIN SOFTWARE (Kumpulan Referensi Java)
PDF
[RPL2] Activity Diagram
PDF
[PBO] Pertemuan 6 - Abstrak
PDF
[PBO] Pertemuan 5 - Polymorphism
PDF
[PBO] Pertemuan 4 - Kontruktor Destruktor
[MPPL] Managemen Sumber Daya Manusia
[RPL2] Pengujian Perangkat Lunak
[RPL2] Growth Hacking
[RPL2] Bisnis Model & Market Analysis
[RPL2] Deployment Diagram
[RPL2] Package Diagram
[RPL2] Sequence Diagram
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 11 - GUI Java Desktop
[PBO] Pertemuan 10 - Pemrograman Database (2)
[RPL2] Design Sprint
[PBO] Pertemuan 10 - Pemrograman Database (1)
[PBO] CARA BIKIN SOFTWARE (Kumpulan Referensi Java)
[RPL2] Activity Diagram
[PBO] Pertemuan 6 - Abstrak
[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 4 - Kontruktor Destruktor

Recently uploaded (8)

DOCX
Antivirus Versi.FULL.JALiN.KB.PRO Keutuhan Aplikasi Konsep dan Praktik dalam ...
PPTX
PEMAHAMAN MAPEL KODING DAN KECERDASAN ARTIFICIAL
PPT
pengantar-sistem-informasi manajemen.ppt
PPTX
Peranan AI dalam Dunia Pendidikan dan Industri Aplikasinya
PPTX
Implementasi Microservices pada Manufaktur
DOCX
Keutuhan Aplikasi Konsep dan Praktik dalam Upaya menciptakan aplikasi Anti Vi...
PPTX
Materi_Array_Karakter_String untuk kelas XI sma.pptx
PPTX
PERANCANGAN DAN PENGEMBANGAN VIDEO GAME SEBAGAI MEDIA TERAPI DEPRESI
Antivirus Versi.FULL.JALiN.KB.PRO Keutuhan Aplikasi Konsep dan Praktik dalam ...
PEMAHAMAN MAPEL KODING DAN KECERDASAN ARTIFICIAL
pengantar-sistem-informasi manajemen.ppt
Peranan AI dalam Dunia Pendidikan dan Industri Aplikasinya
Implementasi Microservices pada Manufaktur
Keutuhan Aplikasi Konsep dan Praktik dalam Upaya menciptakan aplikasi Anti Vi...
Materi_Array_Karakter_String untuk kelas XI sma.pptx
PERANCANGAN DAN PENGEMBANGAN VIDEO GAME SEBAGAI MEDIA TERAPI DEPRESI

[PBO] Pertemuan 10 - Exception & Error Handling

  • 3. • Dalam dunia pengembangan software tentunya programmer tidak ane dengan istilah ERROR • Hal tersebut tidak bisa dihindari karena hal ini dapat terjadi diluar perkiraan dan mungkin bisa menuntun perangkat lunak ke dalam kondisi error yang disebut EXCEPTION. • EXCEPTION adalah suatu kejadian/event yang terjadi ketika eksekusi program yang akan mengganggu alur program. • Dengan exception, alur program dapat diatur agar melakukan suatu proses ketika sebuah error terjadi. • Contoh kejadian: • Pembagian dengan angka0 • File tidak ditemukan • Koneksi jaringan terputus ketika membaca data Oleh : Andri Heryandi, M.T.
  • 4. Oleh : Andri Heryandi, M.T. • Nama class exception yang terjadi ArithmeticException • Terdapat informasi lokasi terjadinya ERROR (menuliskan hasil dan program ditutup normal) tidak tereksekusi karena program di terminate
  • 5. Oleh : Andri Heryandi, M.T. Penanganan exception dapat dilakukan dengan menggunakan 1. Block try catch 2. Block try catch finally
  • 6. Oleh : Andri Heryandi, M.T. • Terdapat baris perintah yang setelah lokasi terjadinya ERROR (menuliskan hasil dan program ditutup normal) TETAP terekseksui walaupun terjadi exception
  • 7. Oleh : Andri Heryandi, M.T. Jika sebuah/sekumpulan statement memiliki banyak kemungkinan exception, maka untuk penanganan tiap exception bisa menggunakan block try yang memiliki banyak catch. ContohKasus: Pada contoh program sebelumnya(class ContohException2) adabariskb.nextInt() yang berguna untuk membaca sebuah integer dari keyboard. Bagaimana kalau yang diinputkan bukan integer, tapi string?
  • 8. Oleh : Andri Heryandi, M.T. Solusi : Berarti ada 2 exception yang harus dihandle dalam program tersebut yaitu Arithmetic Exception dan Input Mismatch Exception
  • 9. Oleh : Andri Heryandi, M.T.
  • 10. Oleh : Andri Heryandi, M.T. Jika sebuah exception terjadi, maka baris-baris di blok try setelah baris terjadinya exception pasti tidak akan tereksekusi karena alur program akan pindah ke blok catch. Jika baris-baris dibawah lokasi exception ingin tetap dijalankan ketika terjadi exception ataupun tidak terjadi exception, maka tulislah perintah-perintah tersebut di bagian finally. • Finally ditulis di bawah catch. • Blok finally PASTI dieksekusi walaupun tidak terjadi exception. • Blok finally biasanya digunakan untuk melepas resource (tutup file, tutup koneksi ke jaringan, free memory dll).
  • 11. Oleh : Andri Heryandi, M.T. • “Tutup scanner” akan dieksekusi baik ketika terjadi exception atau tidak
  • 12. Oleh : Andri Heryandi, M.T. Tidak semua exception yang telah didefinisikan oleh Java mendukung semua kebutuhan kita. Contoh Kasus: • Untuk nilai suatu matakuliah, nilai hanya boleh 0 sampai 100. • Java tidak memiliki exception untuk menangani exception tersebut. Solusi: Buatlah exception sendiri Cara membuat exception sendiri: Buat sebuah class turunan dari Exception atau Runtime Exception • Exception yang menggunakan super class Exception disebut sebagai checked exception. Jika suatu method melemparkan exception jenis ini, maka pemanggilan method ini harus dalam blok try-catch. • Exception yang menggunakan super class Runtime Exception disebut sebagai unchecked exception. Jika suatu method melemparkan exception jenis ini, maka pemanggilan method ini tidak harus dalam blok try-catch.
  • 13. Oleh : Andri Heryandi, M.T.
  • 14. Oleh : Andri Heryandi, M.T. • Throwing Exception adalah suatu operasi melemparkan sebuah exception ketika sebuah exception terjadi. • Perintah untuk melempar sebuah exception adalah throw. • Untuk mendefinisikan sebuah method bisa melemparkan exception tertentu, maka gunakan keyword throws di pendefinisian method, diikuti dengan class exceptionnya.
  • 15. Oleh : Andri Heryandi, M.T.