MulaiMulai sekarang secara gratis

RuntimeException

RuntimeExceptions tidak memerlukan blok try/catch dalam kode. Biasanya, ini dapat dihindari dengan praktik pengodean yang baik. Namun, ketika kesalahan tidak terdeteksi dan RuntimeException tidak tertangkap, aplikasi akan gagal dan menampilkan informasi masalah yang mungkin tidak selalu dipahami pengguna. Dalam latihan ini, Anda akan melihat apa yang terjadi saat Anda tidak menangkap kemungkinan RuntimeException dan apa yang terjadi saat Anda menggunakan try/catch untuk menanganinya.

Latihan ini adalah bagian dari kursus

Tipe Data dan Exception di Java

Lihat Kursus

Petunjuk latihan

  • Periksa metode withoutTryCatch() dan withTryCatch dalam aplikasi ini dan perhatikan perbedaannya.
  • Jalankan aplikasi tanpa perubahan — yang akan mengeksekusi metode withoutTryCatch() dan menyebabkan RuntimeException.
  • Komentari baris 5 dan hapus komentar pada baris 7, lalu jalankan kembali aplikasi; kali ini akan mengeksekusi metode withTryCatch() yang menangani RuntimeException.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

public class RuntimeExceptionHandling {

	public static void main(String[] args) {
		// Comment out this line
		withoutTryCatch();
		// Uncomment this line
		// withTryCatch();
	}

	public static void withoutTryCatch() {
		String[] mounts = { "Everest", "K2", "Kangchenjunga", "Lhotse" };
		String selectedMount = mounts[4];
		System.out.println("Selected item is: " + selectedMount);
	}

	public static void withTryCatch() {
		try {
			String[] mounts = { "Everest", "K2", "Kangchenjunga", "Lhotse" };
			String selectedMount = mounts[4];
			System.out.println("Selected item is: " + selectedMount);
		} catch (ArrayIndexOutOfBoundsException e) {
			System.out.println("Oops - made a mistake accessing the mounts array with a bad index.");
		}
	}
}
Edit dan Jalankan Kode