Java-program til oprettelse af brugerdefineret undtagelse

I dette eksempel lærer vi at oprette brugerdefineret kontrolleret og ikke-markeret undtagelse i Java.

For at forstå dette eksempel skal du have kendskab til følgende Java-programmeringsemner:

  • Java-undtagelser
  • Java Undtagelse Håndtering
  • Java-klasse og objekter

Eksempel 1: Java-program til oprettelse af brugerdefineret kontrolleret undtagelse

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

Produktion

 Swift føjes til ArrayList (CustomException: Java eksisterer allerede) Undtagelse opstået

I ovenstående eksempel har vi udvidet Exceptionklassen til at oprette en brugerdefineret undtagelse ved navn CustomException. Her kalder vi konstruktøren af Exceptionklassen fra klassen CustomException ved hjælp af super()nøgleord.

Inde i metoden checkLanguage()har vi kontrolleret undtagelsestilstanden, og hvis undtagelsen forekommer, håndterer prøve … fangstblokken undtagelsen.

Her er dette den kontrollerede undtagelse. Vi kan også oprette ikke-markeret undtagelsesklasse i Java. For at lære mere om afkrydset og ikke-markeret undtagelse, besøg Java Exception.

Eksempel 2: Opret brugerdefineret ikke-markeret undtagelsesklasse

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

Produktion

 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)

I ovenstående eksempel har vi udvidet RuntimeExceptionklassen til at oprette en ukontrolleret brugerdefineret undtagelsesklasse.

Her kan du bemærke, at vi ikke har erklæret noget forsøg … fangstblok . Det er fordi den ikke-markerede undtagelse kontrolleres ved kørsel.

Derudover svarer andre funktioner til ikke-markeret undtagelse til det ovennævnte program.

Interessante artikler...