Banner Java

Model Penanganan Eksepsi (Exception) Di Pemrograman Java

Model penanganan eksepsi di Java didasarkan pada tiga operasi yaitu mendeklarasikan (declaring) eksepsi, melempar (throwing) eksepsi dan menangkap (catching) eksepsi. Ketiga operasi penanganan aksi tersebut melibatkan lima kata kunci (keyword) yaitu throw, throws, try, catch dan finally.

Eksepsi terjadi di sebuah metoda. Jika eksepsi tersebut ingin diproses atau ditangani oleh pemanggil atau pengguna metoda (caller), obyek eksepsi harus dibuat dan kemudian meleparkannya untuk diinformasikan kepada pemanggil (pengguna) metoda tersebut. Jika eksepsi dapat ditangani di dalam metoda dimana eksepsi terjadi, maka eksepsi tidak perlu dilempar.

Mendeklarasikan eksepsi.

Di dalam mendeklarasikan eksepsi di sebuah metoda, diperlukan kata kunci throws di deklarasi metoda dengan sintak sebagai berikut:

   public void nama-metoda() throws nama-eksepsi

contohnya,

   public void printObjek() throws ClassNotFoundException

Apabila metoda tersebut akan melempar lebih dari satu macam eksepsi, Anda dapat menambahkan eksepsi berikutnya dengan pemisah koma sebagaimana sintak di bawah ini.

   public void nama-metoda() throws nama-eksepsi1, nama-eksepsi2, …, nama-eksepsi3

Error dan RuntimeError beserta kelas turunannya (unchecked exception) dapat terjadi di kode program Java mana saja sehingga tidak perlu mendeklarasikan eksepsi dari kelas tersebut. Lain halnya dengan checked exception. Setiap metoda harus mendeklarasikan tipe dari checked exception yang mungkin dilempar agar pemanggil atau pengguna metoda tersebut mengetahuinya.

Melempar eksepsi.

Ketika program mendeteksi adanya eksepsi, program dapat membuat obyek dari tipe eksepsi tersebut dan kemudian melemparkanya (throw). Misalnya, metoda parseInt dari kelas Integer hanya menerima argumen berupa string numerik integer. Apabila argumen yang diberikan ke metoda tersebut adalah selain string numerik integer, maka program akan membuat obyek dari kelas IllegalArgumentException dan melemparkannya seperti pernyataan di bawah ini.

   IllegalArgumentException iae = new IllegalArgumentException(“Argumen Salah”);
   throw iae;

atau dengan cara yang lebih singkat seperti pernyataan di bawah ini.

   throw new IllegalArgumentException(“Argumen Salah”);

Proses melempar eksepsi ini dinamakan dengan throwing exception. Anda perlu perhatikan bahwa kata kunci untuk mendeklarasikan eksepsi adalah throws, sedangkan kata kunci untuk melemparkan obyek kelas eksepsi adalah throw.

Menangkap eksepsi.

Ketika sebuah eksepsi terjadi dan dilempar, eksepsi tersebut dapat ditangkap dan kemudian ditangani (handling) di dalam blok try-catch.

   try {
      // pernyataa yang mungkin mendeteksi eksepsi
      pernyataan;
   }
   catch (Eksepsi1 eksepsi1) {
      penangan (handler) eksepsi1;
   }
   catch (Eksepsi2 eksepsi2) {
      penangan (handler) eksepsi2;
   }
   …
   catch (EksepsiN eksepsiN) {
      penangan (handler) eksepsiN;
   }

Baca artikel terkait lainnya:

Untuk memperbaiki mutu konten, Anda dapat berpartisipasi dengan cara melaporkan apabila menemukan kesalahan ketik, kata-kata rangkap, redaksi kurang pas (jelas), gambar pendukung tidak ada dan sebagainya melalui form Kontak Kami untuk mendapatkan perbaikan. Terima kasih atas kerjasamanya.

Hindro HindriantoHindro adalah pendiri sekaligus admin termasmedia.com dan topikit.com, blog online yang mengulas teknologi informasi. Dunia web mulai ditekuni tahun 2012 dengan mempelajari CMS Joomla dan Wordpress. Beberapa buku yang sekarang dipelajari antara lain PHP, HTML5, ASP.NET 4.5, JavaScript, CSS3, MySQL, Adobe Dreamweaver, Adobe Photoshop dan Adobe Flash.