En Java, nous pouvons créer nos propres exceptions qui sont des classes dérivées de la classe Exception. La création de notre propre exception est connue sous le nom d’exception personnalisée ou d’exception définie par l’utilisateur. Fondamentalement, les exceptions personnalisées Java sont utilisées pour personnaliser l'exception en fonction des besoins de l'utilisateur.
Prenons l'exemple 1 dans lequel la classe InvalidAgeException étend la classe Exception.
numpy signifie
En utilisant l'exception personnalisée, nous pouvons avoir votre propre exception et votre propre message. Ici, nous avons passé une chaîne au constructeur de la superclasse, c'est-à-dire la classe Exception qui peut être obtenue à l'aide de la méthode getMessage() sur l'objet que nous avons créé.
Dans cette section, nous apprendrons comment les exceptions personnalisées sont implémentées et utilisées dans les programmes Java.
Pourquoi utiliser des exceptions personnalisées ?
Les exceptions Java couvrent presque tous les types généraux d'exceptions pouvant survenir dans la programmation. Cependant, nous devons parfois créer des exceptions personnalisées.
Voici quelques-unes des raisons d’utiliser des exceptions personnalisées :
cours de mathématiques Java
- Pour intercepter et fournir un traitement spécifique à un sous-ensemble d’exceptions Java existantes.
- Exceptions de logique métier : ce sont les exceptions liées à la logique métier et au flux de travail. Il est utile pour les utilisateurs de l’application ou les développeurs de comprendre le problème exact.
Afin de créer une exception personnalisée, nous devons étendre la classe Exception qui appartient au package java.lang.
image de démarque
Prenons l'exemple suivant, dans lequel nous créons une exception personnalisée nommée WrongFileNameException :
public class WrongFileNameException extends Exception { public WrongFileNameException(String errorMessage) { super(errorMessage); } }
Remarque : Nous devons écrire le constructeur qui prend la chaîne comme message d'erreur et il est appelé constructeur de classe parent.
Exemple 1:
Voyons un exemple simple d'exception personnalisée Java. Dans le code suivant, le constructeur de InvalidAgeException prend une chaîne comme argument. Cette chaîne est transmise au constructeur de la classe parent Exception à l'aide de la méthode super(). De plus, le constructeur de la classe Exception peut être appelé sans utiliser de paramètre et l’appel de la méthode super() n’est pas obligatoire.
TestCustomException1.java
// class representing custom exception class InvalidAgeException extends Exception { public InvalidAgeException (String str) { // calling the constructor of parent Exception super(str); } } // class that uses custom exception InvalidAgeException public class TestCustomException1 { // method to check the age static void validate (int age) throws InvalidAgeException{ if(age <18){ throw an object of user defined exception new invalidageexception('age is not valid to vote'); } else { system.out.println('welcome main method public static void main(string args[]) try calling the validate(13); catch (invalidageexception ex) system.out.println('caught exception'); printing message from invalidageexception system.out.println('exception occured: ' + ex); system.out.println('rest code...'); < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/13/java-custom-exception.webp" alt="Java Custom Exception"> <h3>Example 2:</h3> <p> <strong>TestCustomException2.java</strong> </p> <pre> // class representing custom exception class MyCustomException extends Exception { } // class that uses custom exception MyCustomException public class TestCustomException2 { // main method public static void main(String args[]) { try { // throw an object of user defined exception throw new MyCustomException(); } catch (MyCustomException ex) { System.out.println('Caught the exception'); System.out.println(ex.getMessage()); } System.out.println('rest of the code...'); } } </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/13/java-custom-exception-2.webp" alt="Java Custom Exception"> <hr></18){>
Sortir:
18){>