Username Password

Lost Password
View Thread
Explore Your Brain » Pemrograman » Java
Exception di Java
Username
Password
Register FAQ Members List Today's Posts Search

Print Thread

03-07-2009 01:29 PM Exception di Java
User Avatar

insomniacz
Genin


Posts: 50
Joined: 29.06.09
Pembahasan kali ini, kita akan membahas tentang Exception (Eksepsi) di Java. Pemahaman tentang Exception merupakan syarat mutlak yang harus di miliki dalam mempelajari bahasa pemrograman yang berorientasi objek.

Exception
Exception atau Eksepsi adalah suatu kesalahan yang terjadi pada saat kita melakukan eksekusi program. Sebagai contoh, pembagian dengan nol, index array yang tidak valid, serta saat kita melakukan operasi I/O (input atau output) dan pemrograman socket di Java. Di dalam Java tipe eksepsi dapat dibedakan menjadi dua, yaitu :
- Checked Exception (Eksepsi yang dicek)
- Unchecked Exception (Eksepsi yang tidak dicek)

Namun, keduanya haruslah kita tangani sendiri, agar program berjalan sesuai yang kita inginkan. Di dalam Java ada lima buah kata kunci yang dapat digunakan untuk menangani eksepsi, yaitu :

- try
- catch
- finally
- throw
- throws

Berikut ini adalah contoh program yang menggunakan lima buah kata kunci untuk penanganan eksepsi.
class Eksepsi {
public static void main(String[] args) {
int a ;
System.out.println(“Pembagian nol”);
a = 30 / 0;
System.out.println(“Hasilnya : “ + a);
System.out.println(“Ini hanya contoh”);// ini tidak akan dieksekusi
}
}

Terlihat dari contoh di atas bahwa baris perintah :
System.out.println(“Ini hanya contoh”);
tidak dieksekusi, ini karena telah terjadi eksepsi karena pembagian suatu bilangan dengan nol. Agar baris perintah tersebut dieksekusi maka kita harus menggunakan blok try dan catch.

class Eksepsi {
public static void main(String[] args) {
int a ;
System.out.println(“Pembagian nol”);
try {
a = 30 / 0;
System.out.println(“Hasilnya : “ + a);
} catch (ArithmeticException e) {
System.out.println(“Ini hanya contoh”);
}
}
}

Dengan menggunakan blok try catch maka baris perintah

System.out.println(“Ini hanya contoh”);

Dapat kita eksekusi. Untuk penjelasan program di atas akan kita uraikan satu-persatu.
Blok try untuk menempatkan statement atau pernyataan dari baris perintah yang sekiranya dapat menghasilkan eksepsi. Blok catch adalah untuk menangkap eksepsi tersebut, karena pembagian dengan nol merupakan eksepsi berupa aritmatika, maka parameter di dalam catch kita isikan sesuai tipe eksepsi tersebut.

Selanjutnya kita akan menggunakan blok catch lebih dari satu, ini digunakan agar eksepsi yang tidak ditangkap di blok catch sebelumnya dapat ditangkap di blok catch berikutnya.


class Eksepsi {
public static void main(String[] args) {
int a ;
System.out.println(“Pembagian nol”);
try {
a = 30 / 0;
System.out.println(“Hasilnya : “ + a);
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println(“Blok catch pertama : ” + e);
} catch (ArithmeticException ea) {
System.out.println(“Blok catch kedua : ” + ea);
}
}
}


Kata kunci finally
Kata kunci finally, lebih sering digunakan pada operasi I/O (input/output) serta socket programming di Java. Namun contoh sederhana di bawah ini dapat memberikan gambaran jelas kapan saatnya menggunakan kata kunci finally.

class Eksepsi {
public static void main(String[] args) {
int a ;
System.out.println(“Pembagian nol”);
try {
a = 30 / 0;
System.out.println(“Hasilnya : “ + a);
} catch (ArithmeticException e) {
System.err.println(“Eksepsi : “ + e);
} finally {
System.err.println(“Blok finally”);
}
}
}

Statement atau pernyataan yang berada di dalam blok finally pasti akan dieksekusi, pada saat terjadi eksepsi maupun tidak terjadi eksepsi. Untuk membuktikannya anda dapat mengganti angka 0 dengan angka selain nol.

Kata kunci throw dan throws

Kata kunci throw digunakan untuk melempar eksepsi, sedangkan kata kunci throws digunakan untuk eksepsi yang di cek oleh Java. Ingat kembali pembahasan materi sebelumnya, bahwa di Java terdapat dua buah eksepsi, yaitu Checked Exception (Eksepsi yang dicek) dan Unchecked Exception (Eksepsi yang tidak di cek). Untuk lebih jelasnya, anda dapat melihat contoh di bawah ini :

// contoh program penggunaan kata kunci throw
class LemparEksepsi {
public static void main(String[] args) {

// buat objek dari class ArithmeticException
ArithmeticException ae = new ArithmeticException(“\n\nEksepsi buatan sendiri\n”);
throw(ae);
}
}

// contoh program penggunaan kata kunci throws
import java.io.*;
class ContohThrows {
public static void main(String[] args) throws IOException {

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
System.out.println(“Masukkan kalimat”);
String keyboard = input.readLine();
System.out.println(“Kalimat yang telah di input : “ + keyboard);
}
}

Penjelasan program diatas :
Karena program diatas mengakibatkan eksepsi yang di cek oleh Java, yaitu eksepsi berupa IOException, maka kita harus menggunakan kata kunci throws agar program dapat dieksekusi.

Sekarang anda telah memahami, tipe-tipe exception di Java. Saya menyarankan anda mempelajari lebih jauh melalui tutorial yang dapat di download dari situs java. Pembahasan diatas hanyalah sekedar mengenalkan anda tentang exception di Java.

Cukup sekian dari saya, mohon maaf atas segala kekurangan.


'perjuangan adalah pelaksanaan kata-kata'

Romi Satria Wahono
( Founder Ilmu Komputer.com )


Thank’s to :

- My God Allah SWT, Kasih SayangMu Takkan Pernah Dapat Kuhitung
- My PC, Maafkan Aku Yang Telah Memaksamu Untuk Beroperasi Walau Dalam Keadaan Sekarat
- Dewi sang Matahari Malamku, maafkan aku telah menduakanmu dengan komputer

"Tolong dikoreksi jika ada kesalahan...."
 
Offline
Jump to Forum:
Forum powered by fusionBoard
Share this Thread
URL:
BBcode:
HTML:
Similar Threads
Thread Forum Replies Last Post
eBook Java Bahasa Indonesia – Aplikasi POS Berarsitektur Three Tier Menggunakan Swing, Hibernate, da E-Book 12 03-02-2014 22:21
Dasar Pemrograman Java - Chapter02 x Input Proses Output Java 2 01-05-2012 06:23
Dasar Pemrograman Java - Chapter01 x Requirement, Compile, Error & Run Java 3 01-04-2012 10:33
Konsep Mendasar Bahasa Java Java 5 24-01-2011 17:03
Software untuk Menjalankan Prpgram Java Java 5 17-12-2010 07:38
Copyright © 2007-2016