Konten Ini Di Lindungi
Silakan masuk atau daftar untuk melihat konten ini
Exception Handling adalah mekanisme di Java untuk menangani kesalahan (error) yang terjadi saat program dijalankan, seperti gagal membuka file, pembagian dengan nol, atau akses array di luar batas. Saat error terjadi, Java melempar objek bernama exception (disebut throwing), yang kemudian bisa ditangkap dan ditangani dengan blok catch (catching).
Tujuannya adalah agar program tidak langsung berhenti, melainkan bisa menangani error dengan cara yang aman dan terkontrol.
class handlingeksepsi {
public static void main(String[] args) {
try {
for (int i=0; i<=9; i++) {
System.out.println("Nilai i = "+i);
if (i==5) { System.out.println(i/0); }
}
} catch (RuntimeException r) {
System.err.println("Terjadi kesalahan pembagian dengan nilai 0");
}
System.out.println("System.out.println(\"Dengan menggunakan try, kesalahan yang mungkin \n terjadi tidak mengakibatkan deadlock (eksekusi tidak dihentikan), \n buktinya statement ini dijalankan.........\");");
}
}
class tryfinally {
public static void main(String[] args) {
try {
for (int i=0; i<=9; i++) {
System.out.println("Nilai i = "+i);
if (i==5) System.out.println(i/0);
}
} finally {
System.out.println("Terjadi kesalahan pembagian dengan nilai 0, ");
}
System.out.println("Tetapi statemen di dalam blok finally tetap dijalankan....");
}
}
Silakan masuk atau daftar untuk melihat konten ini
public class NestedTryCatchExample {
public static void main(String[] args) {
try {
// Blok luar: menangani kesalahan umum
int[] numbers = {10, 20, 30};
System.out.println("Nilai indeks ke-2: " + numbers[2]);
try {
// Blok dalam: menangani pembagian dengan nol
int result = numbers[1] / 0;
System.out.println("Hasil pembagian: " + result);
} catch (ArithmeticException ae) {
System.out.println("Kesalahan aritmatika: " + ae.getMessage());
}
try {
// Blok dalam lainnya: menangani akses indeks di luar batas
System.out.println("Nilai indeks ke-5: " + numbers[5]);
} catch (ArrayIndexOutOfBoundsException aioobe) {
System.out.println("Indeks array di luar batas: " + aioobe.getMessage());
}
} catch (Exception e) {
System.out.println("Kesalahan umum: " + e.getMessage());
}
System.out.println("Program selesai.");
}
}
public class ThrowThrowsExample {
// Method yang melempar exception jika umur kurang dari 18
public static void cekUmur(int umur) throws IllegalArgumentException {
if (umur < 18) {
// Melempar exception secara manual
throw new IllegalArgumentException("Umur harus minimal 18 tahun untuk mendaftar.");
} else {
System.out.println("Pendaftaran berhasil. Umur Anda: " + umur);
}
}
public static void main(String[] args) {
try {
// Memanggil method yang bisa melempar exception
cekUmur(15);
} catch (IllegalArgumentException e) {
// Menangkap dan menangani exception
System.out.println("Terjadi kesalahan: " + e.getMessage());
}
System.out.println("Program selesai.");
}
}
Tugas di atas ubah ubah aja biar gak mirip, soalnya banyak juga yang buka webnya
Gabung dalam percakapan