MAKALAH PENJELASAN TENTANG
EXCEPTION HANDLING PADA JAVA
Nama : Kian Nurul Hikmah
Pelajaran : Web Berbasis Objek
Kelas : XI RPL 2
KATA PENGANTAR
Dengan menyebut nama Allah SWT yang Maha Pengasih lagi Maha Panyayang, saya panjatkan puja dan puji syukur atas kehadirat-Nya, yang telah melimpahkan rahmat, hidayah, dan inayah-Nya kepada kami,
Makalah yg berjudul “Penjelasan Exception Handling” ini telah kami susun dengan maksimal dan mendapatkan bantuan dari berbagai pihak sehingga dapat memperlancar pembuatan makalah ini. Untuk itu saya menyampaikan banyak terima kasih kepada semua pihak yang telah berkontribusi dalam pembuatan makalah ini.
Terlepas dari semua itu, Saya menyadari sepenuhnya bahwa masih ada kekurangan baik dari segi susunan kalimat maupun tata bahasanya. Oleh karena itu dengan tangan terbuka kami menerima segala saran dan kritik dari pembaca agar saya dapat memperbaiki
makalah ini.
Bekasi,13 April 2017
DAFTAR ISI
Halaman Judul... i
Kata Pengantar... ii
Daftar Isi... iii
BAB I PENDAHULUAN... 1
A. Latar Belakang... 2
B. Rumusan Masalah... 3
C. Tujuan Penulisan... 4
BAB II PEMBAHASAN... 5
A. Pengertian java ... 6
B. Pengertian Exception Handling... 7
C. Perbedaan antara Class Error dan Class Exception di java... 8
D. Keyword penting pada exception handling... 9
BAB III PENUTUP... 10
A. Kesimpulan ... 11
B. Saran ... 12
BAB I PENDAHULUAN
A. Latar Belakang
Perangkat lunak adalah satu bagian yang tak terpisahkan dari system computer saat ini. Perkembangan teknologi saat ini dapat dipastikan mengikutsertakan perkembangan perangkat lunak. Perkembangan pembangunan perangkat lunak mengalami kemajuan yang signifikan sejak 6 dekade terakhir : dimulai dari sekedar memberi instruksi biner ke system computer sederhana, pembuatan bahasa pemrograman tingkat rendah, tingkat menengah sampai tingkat tinggi. Selain itu, karena semakin kompleknya kebutuhan akan computer sebagai alat Bantu komputasi, perkembangan perngkat lunak juga telah melahirkan konsep-konsep pemrograman, mulai dari konsep pemrograman sederhana (hanya menuliskan baris-baris program dari yang berjalan dari awal sampai akhir program), pembuatan prosedur-prosedur, sampai pada pemrograman berorientasi obyek.
B. Rumusan Masalah
a Apa yang dimaksud dengan JAVA?
b. Apa Yang dimaksud Dengan Exception Handling?
c. Apa Perbedaan antara Class Error dan Class Exception di java? d. Apa saja Keyword penting pada exception handling ?
C. Tujuan Penulisan
Maksud dan tujuan dari pembuatan makalah ini adalah :
Untuk memenuhi salah satu tugas Web Berbasis Objek. dan Menjelaskan tentang Exception Handling beserta contoh pembuatan programnya.
Exception Handling dalam Java Programming
I. Pengertian Exception Handling
Pada dasarnya, Exception merupakan subkelas dari kelas java.lang.Throwable. “Bukalah dokumentasi java untuk lebih menyakinkan anda”. Karena Exception adalah sebuah kelas maka hakikatnya ketika program berjalan dan muncul sebuah bug atau kesalahan maka bug tersebut dapat dianggap sebuah object. Sehingga ketika object ini di tampilkan di layar maka java akan secara otomatis memanggil method toString yang terdapat dalam object bertipe Exception ini. Java memberikan akses kepada developer
untuk mengambil object bug yang terjadi ini dengan mekanisme yang dikenal Exception Handling. Exception handling merupakan fasilitas di java yang memberikan flexibilitas kepada developer untuk menangkap bug atau kesalahan yang terjadi ketika program berjalan. Contoh ExceptionHandling akan dibahas pada bagian berikutnya.
II. Perbedaan antara ClassError dan Class Exception di java
Seperti yang telah dijelaskan diatas bahwa kelas Exception merupakan kelas turunan dari kelas Throwable di packageJava.Lang. Selain Exception, java.lang.Throwable juga memiliki subclass yaitu class Error. Tentu, kita bertanya-tanya, sebetulnya apa sih perbedaan antara classError dengan class Exception.
Penjelasan dari ClassError :
“An Error is a subclass of Throwable that indicates serious problems that a reasonable
application should not try to catch. Most such errors are abnormal conditions” (JDK 5.0
Documentation)
Penjelasan dari classException :
“The class Exception and its subclasses are a form of Throwable that indicates conditions
that a reasonable application might want to catch. “ (JDK 5.0 Documentation)
Seperti dari penjelasan yang diberikan oleh JDK Documentation, maka dapat kita lihat bahwa error dan exception pada dasarnya berbeda. Error merupakan masalah yang muncul tapi tidak ada alasan yang kuat untuk menangkapnya. Sedangkan Exception
merupakan kesalahan kecil yang muncul dan ingin diperlakukan sesuai keinginan
developer.
III. Keyword penting pada exceptionhandling
1. try
Keyword ini biasanya digunakan dalam suatu block program. keyword ini digunakan untuk mencoba menjalankan block program kemudian mengenai dimana munculnya kesalahan yang ingin diproses. Keyword ini juga harus dipasangkan dengan keyword catch atau keywordfinally yang akan dibahas pada point kedua dan ketiga.
Contoh penggunaan :
public class A {
public static void main(String[] args) { try
{
int a = 1 / 0; // berpotensi untuk menimbulkan kesalahan yaitu // pembagian dengan bilangan 0
System.out.println("perintah selanjutnya");
java.lang.ArithmeticException: / by zero
Perhatikan contoh diatas, ada beberapa hal penting yang perlu dilihat. Pertama, block program yag diyakini menimbulkan kesalahan maka ada di dalam block try and
catch.Kedua, kesalahan yang muncul akan dianggap sebagai object dan ditangkap
catch kemudian di assign ke variable kesalahan dengan tipe Exception. Ketiga, perintah setelah munculnya kesalahan pada block try tidak akan dieksekusi.
2. catch
Jika anda sudah melihat contoh try maka secara tidak langsung anda sudah memahami kegunaan dari keyword ini. Dalam java, keyword catch harus dipasangkan dengan try. Kegunaan keyword ini adalah menangkap kesalahan atau bug yang terjadi dalam block try. Setelah menangkap kesalahan yang terjadi maka developer dapat melakukan hal apapun pada blockcatch sesuai keinginan developer. Contoh Program :
catch(Exception kesalahan) {
System.out.println(“mohon maaf, terdapat kesalahan pada program”); //lakukan hal lainnya disini
}
public class A {
public static void main(String[] args) { try
{
int a = 1/0; //berpotensi untuk menimbulkan kesalahan yaitu pembagian dengan bilangan 0
Keyword ini merupakan keyword yang menunjukan bahwa blockprogram tersebut akan selalu dieksekusi meskipun adanya kesalahan yang muncul atau pun tidak ada. Contoh implementasinya pada program :
public class A {
public static void main(String[] args) { try
System.out.println("terima kasih telah menjalankan program"); }
} }
Output Program diatas:
terima kasih telah menjalankan program
Jika saya lakukan modifikasi program diatas menjadi :
public class A {
public static void main(String[] args) { try
{
}
catch (Exception e) {
System.out.println(“ada kesalahan yang muncul”); }
finally {
System.out.println(“terima kasih telah menjalankan program”); }
} }
Output Program :
ada kesalahan yang muncul
terima kasih telah menjalankan program
Perhatikan kedua contoh diatas, block finally akan selalu dieksekusi meskipun adanya kesalahan atau tidak pada block try. Berbeda dengan keyword catch keyword finally hanya dapat diletakan 1 kali setelah keywordtry.
4. throw
Keyword ini digunakan untuk melemparkan suatu bug yang dibuat secara manual. Contoh program :
public class A {
public static void main(String[] args) { try
{
Perhatikan contoh berikut ini :
public class A {
public static void main(String[] args) { try
{
throw new B(); //cobalah ganti baris ini dengan à new B(); }
class B extends Exception {
return “object dengan tipe kelas B”; }
}
Output Program :
object dengan tipe kelas B
Program diatas telah mendefinisikan suatu kelas B mengextends dari kelas Exception. Ketika kita melakukan throw new B(); maka object dari kelas bertipe B ini akan dianggap kesalahan dan ditangkap oleh block catch. Sekarang jika anda menghilangkan keywordthrow apa yang terjadi?.
5. throws
Keyword throws digunakan dalam suatu method atau kelas yang mungkin menghasilkan suatu kesalahan sehingga perlu ditangkap errornya. Cara mendefinisikannya dalam method adalah sebagai berikut : <method modifier> type method-name throws exception-list1, exceptio-list2, … {}.
Contoh Program :
public class A {
public static void main(String[] args) { try
{
f(); }
{
System.out.println(e); }
}
public static void f() throws NullPointerException, ArrayIndexOutOfBoundsException {
Output Program :
java.lang.NullPointerException
Contoh program lainnya :
public class A {
public static void main(String[] args) { try
public static void f() throws NullPointerException, ArrayIndexOutOfBoundsException {
Output Program :
java.lang.ArrayIndexOutOfBoundsException
Perhatikan kedua contoh pengguaan keyword throws pada method. Ketika method
BAB 3
PENUTUP
3.1 Kesimpulan
Kesimpulannya adalah bahwa Exception Handling merupakan kondisi yang menyebabkan program mrnjadi hang atau error atau quit dari alur normal yang telah ditentukan pada saat program dijalankan. Exception ini dipicu oleh Runtime Error, yaitu error yang terjadi saat program dieksekusi. Pada dasarnya Exception merupakan subclass dari kelas Throwable, kelas ini terdapat pada peckage java.lang.object yang
merupakan default library dari java.
3.2 Saran
DAFTAR PUSTAKA
Rasyidi (2017) Exception HandlinG dalam Java,
lab.akakom.ac.id/~rasyidi10092/.../Exception%20Handling%20dalam%20Java.docx
Ilham, Hamzah, (2017), http://pboilhamhamzah.blogspot.co.id/2015/05/penanganan-error.html