Langsung ke konten utama

TUGAS 10 PEMROGRAMAN BERORIENTASI OBJEK (B) - Exception Handling


Dalam membuat atau mengembangkan suatu aplikasi, seorang programmer dapat menemui kesalahan dalam pengkodean program, entah itu logic error, syntax error, atau runtime error. Logic error terjadi karena program berjalan tidak sesuai harapan. Hal ini bisa diatasi dengan debugging. Syntax error terjadi karena aturan penulisan bahasa program yang tidak diikuti. Syntax error cenderung mudah diperbaiki karena compiler akan memberi tahu letak kesalahan. Runtime error terjadi ketika program sedang berjalan mendeteksi adanya operasi yang tidak mungkin dilaksanakan. Error yang terjadi saat program sedang running disebut dengan eksepsi (exception).


Exception

Exception adalah sebuah alur peristiwa yang menjalankan proses pada program, perisitwa tersebut berupa kesalahan atau error pada program yang dibuat dan terjadi karena beberapa faktor antara lain: kesalahan inputan, jenis format data yang dimasukkan salah, penggunaan array yang melebihi batas, dsb.


Ada beberapa exception yang sering muncul dalam aplikasi Java:

  1. IllegalArgumentException
    • Muncul saat memanggil method dengan mengirimkan parameter yang tidak sesuai sehingga method tersebut tidak dapat memproses parameter yang dikirim.
  2. NumberFormatException
    • Muncul saat mencoba mengubah string menjadi angka atau integer (casting), tapi string tersebut tidak terformat dengan benar.
  3. ArithmeticException
    • Muncul saat perhitungan aritmetika error. Contohnya ketika membagi suatu angka dengan 0.
  4. IllegalStateException
    • Muncul saat mencoba memanggil method di waktu yang salah. Misalnya saat menggunakan URLConnection untuk terhubung kembali ke alamat yang sudah terhubung.
  5. IOException
    • Muncul saat menginput string, padahal yang diminta angka atau integer.

Exception Handling

Java memberikan akses kepada developer untuk mengambil objek bug yang terjadi dengan mekanisme yang dikenal sebagai exception handling. Exception handling merupakan fasilitas Java yang memberikan fleksibilitas kepada developer untuk menangkap bug atau error yang terjadi ketika program berjalan.


Ada beberapa keyword penting dalam exception handling Java:

1. try
Digunakan untuk menentukan bagian statement program di mana akan terjadi exception. Blok dari try ini harus diikuti dengan catch atau finally.

2. catch
Digunakan untuk menangani error atau exception yang terjadi. Blok catch ini tidak dapat berdiri sendiri tanpa blok try. Block catch dapat diikuti oleh blok finally.

3. finally
Digunakan untuk mengeksekusi bagian code yang penting dari program. Bagian ini akan tetap dijalankan baik terjadi exception maupun tidak.

4. throw
Digunakan untuk melempar exception yang terjadi di mana throw digunakan dalam body dari code yang ada.

5. throws
Digunakan untuk mendeklarasikan exception yang akan terjadi pada bagian fungsi tersebut.

Implementasi

Berikut ini adalah contoh menangani InputMismatchException ketika membaca sebuah input menggunakan try dan catch.

Ketika mengeksekusi input.nextInt(), InputMismatchException akan muncul jika user memasukkan inputan selain integer.

Output yang valid:

Misalkan nilai 6,9 diinput, maka InputMismatchException terjadi dan kontrol program akan dipindahkan ke blok catch. Pernyataan di dalam blok tersebut akan dieksekusi.

Pernyataan input.nextLine() akan memusnahkan input line saat ini dan kemudian user dapat memasukkan input pada line baru.

Variabel lanjutkanInput mengontrol loop. Nilai inisialnya adalah true dan kemudian diubah menjadi false ketika nilai valid diterima sehingga tidak perlu lagi untuk melanjutkan input angka.


Berikut ini adalah contoh menangani exception  menggunakan trycatch, dan throw.

Output yang valid:

Pada program tersebut, jika user menginputkan nilai badak lebih dari 5, maka akan terjadi error. Exception/error yang telah ditangkap oleh blok try akan diubah menjadi objek e pada pernyataan catch, lalu menampilkan pesan error tersebut menggunakan printStackTrace().

Komentar

Postingan populer dari blog ini

TUGAS 3 PEMROGRAMAN WEB (D) - Warung Tegal

Tugas kali ini membuat website Warung Makan Tegal. Dalam proses pengerjaannya, menggunakan  HTML ,   CSS ,   dan JavaScript serta  VSCode  sebagai  text editor . Di website ini, saya mengaplikasikan penggunaan embed video dari Youtube dan image carousel atau slideshow . Laman website-nya dapat diakses pada  link berikut . Untuk  hosting  web sendiri memakai  Netlify . Konten dari website: Main page , berisi daftar makanan, masakan populer, kontak dari warung tegal, serta menu apa saja yang tersedia di dalam website. Tampilan Website Main page Source Code index.html style.css

ETS PEMROGRAMAN WEB (D) - Web Apps

SOAL Jelaskan istilah-istilah berikut kemudian berikan contohnya! HTML element HTML tag CSS selector AJAX Auto2000 adalah sebuah perusahaan penjualan mobil-mobil merk Toyota. Selain menjual mobil, Auto2000 juga melayani servis dan perbaikan kendaraan purna jual. Manajemen menghendaki para pelanggan yang sudah membeli mobil di showroom -nya kelak juga menjadi pelanggan bengkel untuk servis dan perawatan kendaraannya. Auto2000 menginginkan kegiatan perawatan kendaraan para pelanggannya terus dilakukan secara kontinyu di bengkel-bengkel tempat pelanggan membeli kendaraannya. Oleh karena itu, perusahaan membutuhkan sebuah sistem informasi yang dapat mengelola hubungan antara perusahaan dengan pelanggan agar dapat dimanfaatkan c ustomer care perusahaan. Pada saat ini, kegiatan yang dilakukan pada customer care untuk mengelola data informasi kepada pelanggan dirasakan kurang efektif oleh perusahaan. Buatlah desain front end penanganan pelayanan pelanggan dan implementasikan desainnya! Kem

TUGAS 6 PEMROGRAMAN WEB (D) - Form Login & Contact Us dengan Bootstrap

  Tugas kali ini membuat website form login dan contact us menggunakan salah satu framework CSS paling populer, yaitu Bootstrap . Dalam proses pengerjaannya, menggunakan HTML , CSS (Bootstrap) , dan JavaScript (internal). JavaScript di sini dipakai untuk menampilkan alert bahwa data telah di- submit atau dikirim. Laman website-nya dapat diakses pada link berikut . Untuk hosting web sendiri memakai Netlify . Konten dari website: Login page , berisi halaman login sebagai tampilan awal ketika website pertama kali dijalankan.  Ada beberapa kolom yang semuanya wajib diisi dan tidak boleh kosong , yaitu: Email , harus berformat seperti email pada umumnya. Password Contact us page , berisi halaman contact us guna mengirim pesan ke pemilik web. Ada beberapa kolom yang semuanya  wajib diisi  dan tidak boleh  kosong , yaitu: Name Email , harus berformat seperti email pada umumnya. Phone Message Di tiap page , bagian bawah form,   terdapat tautan ( hyperlink ) yang mengarahkan page satu