„Java“ programa, skirta sukurti išimtį

Šiame pavyzdyje mes išmoksime sukurti pasirinktinę patikrintą ir nepažymėtą „Java“ išimtį.

Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:

  • „Java“ išimtys
  • „Java“ išimčių tvarkymas
  • „Java“ klasė ir objektai

1 pavyzdys: „Java“ programa, skirta sukurti pasirinktinai patikrintą išimtį

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

Rezultatas

 „Swift“ įtraukiama į „ArrayList“ („CustomException“: „Java“ jau egzistuoja)

Ankstesniame pavyzdyje mes išplėtėme Exceptionklasę, kad sukurtume pasirinktinę išimtį, pavadintą „CustomException“. Čia mes vadiname Exceptionklasės konstruktorių iš „CustomException“ klasės, naudodami super()raktinį žodį.

Metodo viduje checkLanguage()patikrinome išimties sąlygą, o jei pasitaiko išimtis, „ try… catch block“ tvarko išimtį.

Čia tai yra pažymėta išimtis. Taip pat galime sukurti „Java“ netikrinamą išimčių klasę. Norėdami sužinoti daugiau apie pažymėtas ir nepažymėtas išimtis, apsilankykite „Java“ išimtyje.

2 pavyzdys: sukurkite pasirinktinę nepažymėtą išimčių klasę

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

Rezultatas

 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)

Ankstesniame pavyzdyje mes išplėtėme RuntimeExceptionklasę, kad sukurtume nepažymėtą pasirinktinių išimčių klasę.

Čia galite pastebėti, kad mes nedeklaravome jokio bandymo … sugavimo bloko. Taip yra todėl, kad nepatvirtinta išimtis yra tikrinama vykdymo metu.

Be to, kita nepatikrintų išimčių funkcija yra panaši į pirmiau minėtą programą.

Įdomios straipsniai...