Saturday, 9 April 2016

Exception Handling di java

Haii sobat koding!!...gimana progress belajar kodignya? Makin ngerti kan yaap!!
Nahhhh hari ini kita akan belajar tentang
“ Exception Handling” lohh sobbbb…. Simak yak!

Exception Handling :
Exception adalah event yang terjadi ketika program menemui kesalahan pada saat instruksi program dijalankan. Banyak hal yang dapat menimbulkan event ini, misalnya crash, harddisk rusak dengan tiba-tiba, sehingga program-program tidak bisa mengakses file-file tertentu. Programmer pun dapat menimbulkan event ini, misalnya dengan melakukan pembagian dengan bilangan nol, atau pengisian elemen array melebihi jumlah elemen array yang dialokasikan dan sebagainya.

Mekanisme :
Penangkapan runtime error, dapat mempunyai beberapa blok yang menangkap setiap jenis 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                                        
}                                                                                                                                             
finally {                                                                                                                               
// blok yang harus dieksekusi                                                                                    
}                                                                                                                                              
Penjelasan :
1. TRY

Try digunakan untuk mencoba menjalankan block program kemudian mengenai dimana munculnya kesalahan yang ingin diproses.

2. CATCH
Catch digunakan untuk menangkap kesalahan atau bug yang terjadi dalam block try.Setelah menangkap kesalahan yang terjadi maka developer dapat melakukan hal apapun pada block catch sesuai keinginan developer.
3. FINALLY
Finally menunjukan bahwa block programtersebut akan selalu dieksekusi meskipun adanya kesalahan yang muncul atau pun tidak ada.

Jika pada blok try tidak terjadi exception, maka blok catch tidak ada yang dieksekusi dan segera blok finally yang dieksekusi.

Jika terjadi exception pada blok try, maka salah satu blok catch dieksekusi, kemudian blokfinally dieksekusi.
Tipe-Tipe Exception :
Checked Exception
No
Exception
Deskripsi
1
ClassNotFoundException
Kelas tidak ditemukan
2
CloneNotSupportedException
melakukan clone objek yang tidak mengimplementasikan interfaceCloneable
3
IllegalAccessException
Pengaksesan ke kelas ditolak
4
InstantiationException
Menciptakan objek dari kelas abtract ataupun dari interface
5
InterruptedException
Thread telah diinterupsi oleh thread lain
6
NoSuchFieldException
Field yang diminta tidak ada
7
NoSuchMethodException
Method yang diminta tidak ada
Uncheked Exception
No
Exception
Deskripsi
1
AritmaticException
Kesalahan Aritmatik seperti pembagian dengan nol
2
ArrayIndexOutBoundsException
Index array di luar batas
3
ArrayStoreException
Pemberian nilai ke elemen array tidak sesuai dengan tipenya
4
ClassCastException
Cast yang tidak sah
5
IllegalArgumentException
Argument illegal
6
IllegalMonitorStateException
Operasi monitor illegal seperti menunggu di thread yang tidak terkunci
7
IllegalStateException
Lingkungan atau aplikasi state yang tidak benar
8
IllegalThreadStateException
Operasi yang diminta tidak kompatibel dengan state thread saat itu
9
IndexOutOfBoundException
Indeks di luar batas
10
NegativeArraySizeException
Array diciptakan dengan ukuran negatif
11
NullPointerException
Penggunan null yang tidak sah
12
NumberFormatException
Konversi yang tidak sah dari string ke format numerik
13
SecurityException
Melanggar
aturan security
14
StringIndexOutOfBounds
Index di luar batas string
15
UnsupportedOperationException
Ditemukan operasi yang tidak didukung

Tipe-Tipe Message Exception :
Beberapa method standard yang dapat digunakan untuk menampilkan pesan exception merupakan anggota dari kelas java.lang.Throwable.

No
Method Pesan Exception
Deskripsi
1
getMessage()
Mengembalikan nilai string yang berisi pesan rinci tentang objek Throwable yang mengalami exception
2
toString()
Mengembalikan nilai string yang berisi pesan singkat tentang objek yang mengalami exception
3
getLocalizedMessage()
Menampilkan pesan exception lokal (yang terjadi pada subkelas saja)
4
printStackTrace()
Method ini bersifat void, dan hanya mencetak informasi tentang objek Throwable
 Contoh Kode Exception:  1.  Public class Contoh1{
            public static void main (string [] args) {
int num1=5, num2=0;
try{
int num3 = num1/num2;
System.out.println(“Num 3 = “+num3);
}
Catch(ArtithmeticException obj) {
System.out.println(“Error”+obj.getLocalMessage() );
}
}
}
2. 
Public class Contoh2{
            public static void main (string [] args) {
int num1=5, num2=0;
int arrNum[] ={1,2,3);
try{
int num3 = num1/num2;
System.out.println(“Num 3 = “+num3);
System.out.println(“Elemen Array ke 3 = “+arrNum[3]);
}
Catch(ArtithmeticException obj ){
System.out.println(“Division by zero” );
}

Catch(ArrayIndexOutOfBoundsException obj) {
System.out.println(“Error Array “ );
}

Catch(Exception obj) {
System.out.println(“Errorrrrrrrr”);
}
}
}
3.
 public class Contoh3 {
public static void main(String[] args) {
int result = division(100,0); // Line 2
System.out.println(“hasil : “+result);
result = division(100,2);
System.out.println(“hasil : “+result);
}
public static int division(int totalSum, int totalNumber) {
int quotient = -1;
System.out.println(“Komputasi Pembagian “+totalSum+” dengan “+totalNumber);
try
{ quotient = totalSum/totalNumber; }
catch(Exception e)
{ System.out.println(“Pesan Exception : “+ e.getMessage()); }
finally
{ if(quotient != -1)
{ System.out.println(“Finally Block Dijalankan”);
System.out.println(“hasil fungsi : “+ quotient); }
else
{ System.out.println(“Finally Block DIjalankan. Terjadi Exception”);
System.out.println(“hasil fungsi : “+ quotient);
return quotient;
}
}
return quotient;
}
}

           

 Mantappp sobat kodinngg, gimana udah ngerti pastinya kan??
Kalo belum , coba dipelajari ulang lagi sobbb :p hahaha...

Created By :

Dilraj Putra 
6701151059
Telkom University
Praktikum Algoritma Pemograman Lanjut TA9

1 comment:

  1. you're the best bro, Prima Raga Sports berkembang dah ini

    ReplyDelete