Program Java untuk Membuat pengecualian khusus

Dalam contoh ini, kita akan belajar membuat pengecualian yang dicentang dan tidak dicentang khusus di Java.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman Java berikut:

  • Pengecualian Java
  • Penanganan Pengecualian Java
  • Kelas dan Objek Java

Contoh 1: Program Java untuk membuat pengecualian yang dicentang khusus

 import java.util.ArrayList; import java.util.Arrays; // create a checked exception class class CustomException extends Exception ( public CustomException(String message) ( // call the constructor of Exception class super(message); ) ) class Main ( ArrayList languages = new ArrayList(Arrays.asList("Java", "Python", "JavaScript")); // check the exception condition public void checkLanguage(String language) throws CustomException ( // throw exception if language already present in ArrayList if(languages.contains(language)) ( throw new CustomException(language + " already exists"); ) else ( // insert language to ArrayList languages.add(language); System.out.println(language + " is added to the ArrayList"); ) ) public static void main(String() args) ( // create object of Main class Main obj = new Main(); // exception is handled using try… catch try ( obj.checkLanguage("Swift"); obj.checkLanguage("Java"); ) catch(CustomException e) ( System.out.println("(" + e + ") Exception Occured"); ) ) )

Keluaran

 Swift ditambahkan ke ArrayList (CustomException: Java sudah ada) Exception Occured

Dalam contoh di atas, kami telah memperluas Exceptionkelas untuk membuat pengecualian khusus bernama CustomException. Di sini, kami memanggil konstruktor Exceptionkelas dari kelas CustomException menggunakan super()kata kunci.

Di dalam metode checkLanguage(), kami telah memeriksa kondisi pengecualian, dan jika pengecualian terjadi, blok try… catch menangani pengecualian.

Di sini, ini adalah pengecualian yang dicentang. Kita juga dapat membuat kelas pengecualian yang tidak dicentang di Java. Untuk mempelajari lebih lanjut tentang pengecualian yang dicentang dan tidak dicentang, kunjungi Pengecualian Java.

Contoh 2: Buat kelas pengecualian khusus yang tidak dicentang

 import java.util.ArrayList; import java.util.Arrays; // create a unchecked exception class class CustomException extends RuntimeException ( public CustomException(String message) ( // call the constructor of RuntimeException super(message); ) ) class Main ( ArrayList languages = new ArrayList(Arrays.asList("Java", "Python", "JavaScript")); // check the exception condition public void checkLanguage(String language) ( // throw exception if language already present in ArrayList if(languages.contains(language)) ( throw new CustomException(language + " already exists"); ) else ( // insert language to ArrayList languages.add(language); System.out.println(language + " is added to the ArrayList"); ) ) public static void main(String() args) ( // create object of Main class Main obj = new Main(); // check if language already present obj.checkLanguage("Swift"); obj.checkLanguage("Java"); ) )

Keluaran

 Swift is added to the ArrayList Exception in thread "main" CustomException: Java already exists at Main.checkLanguage(Main.java:21) at Main.main(Main.java:37)

Dalam contoh di atas, kami telah memperluas RuntimeExceptionkelas untuk membuat kelas pengecualian khusus yang tidak dicentang.

Di sini, Anda dapat melihat bahwa, kami belum menyatakan blok try… catch . Itu karena pengecualian yang tidak dicentang diperiksa pada saat runtime.

Selain itu, fungsionalitas lain dari pengecualian yang tidak dicentang serupa dengan program yang disebutkan di atas.

Artikel yang menarik...