Kamis, 23 Maret 2023

PBO Bagian 8

               Cara Mengatasi Error dalamPemrograman




1. Mengatasi Kesalahan Sintaks
Kesalahan sintaks merupakan kesalahan yang paling mudah dideteksi karena komputer memberi tahu letak kesalahannya. Kesalahan sintaks diatasi dengan memperbaiki atau membetulkan penulisannya.

2. Mengatasi kesalahan Runtime 
Untuk membahas cara mengatasi kesalahan runtime, kita perlu memahami exception. Penanganan kesalahan runtime dikenal dengan istilah exception handling.
a) Pengertian Exception 
    Exception adalah kondisis abnormal suatu program. Dalam pemrograman java, exception merupakan kejadian atau event yang menghentikan aliran normal suatu program.

Exception dikelompokkan menjadi 2, yaitu checked exception dan unchecked exception. Checked exception dicek saat kompilist (compile time), sedangkan unchecked exception tidak dicek saat kompilasi, melainkan saat program berjalan (runtime). Dalam konsep exception, yang disebut error adalah kesalahan di luar program yang tidak mungkin ditangani oleh program. Error dibedakan dengan exception.

b) Hierarki Class Exception
   Class Java lang. Throwable merupakan class induk dalam hierarki class Exception: Class induk ini diwani oleh dua subclass, yaitu class Exception dan class Error. Hierarki ini ditunjukkan pada gambar berikut.
 

Dalam hal ini, class Error dimasukkan kategori unchecked exception. (Menurut Oracle, excep dibagi menjadi 3: checked exception, unchecked exception, dan error).

c) Exception Handling saat Runtime
    Exception yang terjadi saat program dijalankan disebut runtime exception. Runtime excep dapat ditangani dengan menggunakan beberapa cara. Beberapa keyword yang dapat digunakan dalam penanganan exception ditunjukkan pada tabel berikut.

1) Blok try-catch
Blok ini berfungsi memberikan pesan atau notifikasi saat terjadi kesalahan dan memastikan alur program tetap normal. Bentuk umum blok try-catch adalah sebagai berikut

 try{
statement_1
statement_2
statement_N

catch (Exception e) {
statement_1
statement_2
statement_N  + e.getMessage()};

Penulisan blok try-catch diawali dengan keyword try yang diikuti kurung kurawal pembuka. isi statemen disesuaikan dengan baris instruksi yang ada, lalu diakhiri dengan kurung kurawal penutup

   Kode program catch (Exception e) berfungsi untuk menangkap pesan kesalahan. Blok catch didahului dengan kode program tersebut diskuti tanda kurung kurawal pembuka. Bagian selanjutnya berisi kumpulan pernyataan (statement) yang diperlukan. Pada pernyataan dapat ditambahkan pesan kesalahan program dengan keyword e.getMessage().

Kita dapat menggunakan blok try-catch untuk menangani kesalahan runtime pada file Runtime. java yang dibuat sebelumnya.

2) Blok Finally
    Blok finally digunakan untuk mengeksekusi bagian penting de kode program. Blok ini dieksekusi baik dalam kondisi exception ditangani maupun tidak. Blok final juga berpasangan dengan blok try.

3) Keyword throw
Keyword throw digunakan untuk menghasilkan exception. Contoh program berikut ini akan menghasilkan exception (kesalaluan) karena input integer yang diberikan pada method validak kurang dari 18.

package latihan;
public class UjiThrow{

   static void validasi (nt usia){
   if(usia<18)
   throw new ArithmeticException ("not valid");

else
System.out.println ("Selamat memilih!");

public static void main(String args[]{
validas179

System.out.println("Akhir kode program..");
     }
}

4) Keyword throws
Keyword throws digunakan untuk deklarasi exception Keyword ini tidak menghasilkan exception, hanya menunjukkan bahwa sebuah exception mungkin muncul dalam method. Keyword ini diterapkan pada class.

3. Penanganan Kesalahan Logika
Pada file Logika java,kesalahan logika yang terjadi mengakibatkan ketidak
sesuaian output yang dihasilkan Seharusnya rata-rata 3 bilangan yang dimaksud adalah 200, tetapi ternyata outputnya menghasilkan nilai 300.

Jika kita teliti lebih lanjut, kesalahan terdapat pada penulisan bilangan pembagi dalam formula penentuan nilai rata-ratanya. Yang dideklarasikan sebanyak 3 data, mestinya bilangan pembaginya juga 3, sementara pada formula di haris kelima kode program tertulis 2.
float rata = (float)(A + B + C)/2;

  Untuk mengoreksinya, kita ganti angka 2 dengan angka 3 sehingga rumus atau formula pada baris kelimanya menjadi
float rata = float(A + B + C)/3;


Tidak ada komentar:

Posting Komentar