Java program egyedi kivétel létrehozásához

Ebben a példában megtanulunk egyedi ellenőrzött és nem ellenőrzött kivételeket létrehozni a Java-ban.

A példa megértéséhez ismernie kell a következő Java programozási témákat:

  • Java kivételek
  • Java kivételkezelés
  • Java osztály és objektumok

1. példa: Java program egyedi ellenőrzött kivétel létrehozásához

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

Kimenet

 A Swift hozzáadódik az ArrayList listához (CustomException: Java már létezik) Kivétel történt

A fenti példában kibővítettük az Exceptionosztályt egy CustomException nevű egyedi kivétel létrehozásával. Itt az Exceptionosztály konstruktorát hívjuk meg a CustomException osztályból super()kulcsszó segítségével .

A módszeren belül checkLanguage()ellenőriztük a kivétel feltételét, és ha a kivétel bekövetkezik, a try … catch blokk kezeli a kivételt.

Itt ez az ellenőrzött kivétel. Létrehozhatunk nem ellenőrzött kivétel osztályt is a Java-ban. Ha többet szeretne megtudni a bejelölt és nem ellenőrzött kivételről, látogasson el a Java kivételre.

2. példa: Hozzon létre egyéni, nem ellenőrzött kivétel osztályt

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

Kimenet

 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)

A fenti példában kibővítettük az RuntimeExceptionosztályt egy nem ellenőrzött egyéni kivétel osztály létrehozásával.

Itt észreveheti, hogy még nem jelentettünk be próbálkozási blokkot. Ez azért van, mert a nem ellenőrzött kivétel futás közben ellenőrizhető.

Emellett a nem ellenőrzött kivétel egyéb funkciói hasonlóak a fent említett programhoz.

érdekes cikkek...