Program Java na vytvorenie vlastnej výnimky

V tomto príklade sa naučíme vytvárať vlastné kontrolované a nekontrolované výnimky v Jave.

Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku Java:

  • Výnimky Java
  • Spracovanie výnimiek Java
  • Trieda Java a objekty

Príklad 1: Program Java na vytvorenie vlastnej kontrolovanej výnimky

 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"); ) ) )

Výkon

 Swift je pridaný do ArrayList (CustomException: Java už existuje) Vyskytla sa výnimka

Vo vyššie uvedenom príklade sme Exceptiontriedu rozšírili o vytvorenie vlastnej výnimky s názvom CustomException. Tu voláme konštruktor Exceptiontriedy z triedy CustomException pomocou super()kľúčového slova.

Vo vnútri metódy checkLanguage()sme skontrolovali podmienku výnimky, a ak dôjde k výnimke, blok try … catch spracuje výnimku.

Toto je zaškrtnutá výnimka. Môžeme tiež vytvoriť nekontrolovanú triedu výnimiek v Jave. Ak sa chcete dozvedieť viac o zaškrtnutej a nezačiarknutej výnimke, navštívte Java Exception.

Príklad 2: Vytvorte vlastnú nekontrolovanú triedu výnimiek

 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"); ) )

Výkon

 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)

Vo vyššie uvedenom príklade sme RuntimeExceptiontriedu rozšírili o vytvorenie nekontrolovanej triedy vlastných výnimiek.

Tu si môžete všimnúť, že sme nevyhlásili žiadny pokus … chytiť blok. Je to preto, že nekontrolovaná výnimka je kontrolovaná za behu programu.

Okrem toho sú ďalšie funkcie nezačiarknutej výnimky podobné vyššie uvedenému programu.

Zaujímavé články...