Membuat Exception Kustom di Java: Panduan Langkah demi Langkah
Apa Itu Exception Kustom di Java?
Sebuah exception kustom adalah kelas yang ditentukan pengguna yang memperluas java.lang.Exception (atau RuntimeException untuk skenario yang tidak dicek). Dengan membuat tipe exception Anda sendiri, Anda dapat mewakili kondisi error yang spesifik domain, membuat penanganan error lebih jelas, dan memberikan konteks yang lebih kaya kepada pemanggil.

Dalam praktiknya Anda jarang perlu mengganti semua metode dari Exception. Penyesuaian yang paling umum melibatkan penambahan konstruktor yang menerima kode error, pesan, atau penyebab yang mendasari. Berikut adalah contoh singkat yang menunjukkan langkah-langkah penting.
Contoh: Mendefinisikan dan Melempar Exception Kustom
Langkah 1 – Buat kelas exception
public class MyException extends Exception { private final int errorCode; public MyException(int errorCode) { super("Kode error: " + errorCode); this.errorCode = errorCode; } @Override public String toString() { return "MyException{errorCode=" + errorCode + "}"; } }
Langkah 2 – Gunakan exception dalam kode klien
public class JavaExceptionDemo { public static void main(String[] args) { try { // Simulasi kondisi gagal throw new MyException(2); } catch (MyException e) { System.out.println(e); } } }
Saat Anda menjalankan program Anda akan melihat keluaran berikut:

Dalam contoh di atas kata kunci throw membuat instance dari MyException dan segera menyerahkannya ke blok catch yang cocok terdekat. Metode toString() yang diganti memastikan pesan yang dicetak informatif.
Poin Utama
- Perluas
Exception (atau RuntimeException) untuk membuat tipe kustom. - Sediakan konstruktor yang meneruskan pesan yang bermakna ke superclass.
- Ganti
toString() atau getMessage() untuk output debugging yang lebih jelas. - Gunakan
throw untuk memunculkan exception; tangkap di tempat Anda dapat menanganinya atau meneruskannya lebih lanjut.
Dengan mengikuti praktik ini Anda akan menulis kode Java yang lebih dapat dipelihara dan mendokumentasikan dirinya sendiri yang dengan anggun menangani kondisi error yang spesifik domain.