Le langage Java est conçu pour gérer les erreurs et autres événements inattendus en utilisant un concept d' exception. Lorsqu'une erreur survient , un objet d'exception est générée et transmise (ou jeté ) dans la pile des appels jusqu'à ce qu'il trouve une méthode destinée à traiter ( ou prendre ) cette exception. Java est livré avec des dizaines d'objets d'exception , mais les programmeurs peuvent également créer leur propre . Définition d'un Exception, classe
exceptions personnalisées sont définis de la même façon exacte que n'importe quelle autre classe Java. La seule règle importante est qu'une exception doit étendre la classe Exception dans la bibliothèque de java.lang . Cela se fait de la même façon que n'importe quelle autre classe étend une autre . Un exemple d'une exception définie par l'utilisateur serait:
MyException de classe extends Exception { }
Vous pouvez ajouter vos propres méthodes et des constructeurs pour votre classe d'exception afin de personnaliser à vos fins , mais tout en étendant la classe de base , vous obtiendrez les constructeurs et les méthodes d'exception standard , y compris la possibilité de définir des messages d'erreur .
Lancer une exception personnalisée
< p > Pour utiliser votre exception personnalisé, vous devez le jeter quelque part dans le programme , de même que toute autre exception. Par exemple, l'exemple trivial suivant illustre comment lever une exception pour éviter une méthode de division par zéro :
à double clivage public ( double dividende , double diviseur) jette MyException {
if ( diviseur == 0) throw new MyException ( " division par zéro essayé ! ");
le rendement du dividende /diviseur ;
}
le problème vérifie si le diviseur est égale à zéro . Si c'est le cas, un nouvel objet MyException est créée et lancée avec un message d' erreur approprié. Quelle que soit la partie du programme qui s'appelle la fonction " fracture " serait alors chargé de décider comment traiter avec l'exception.
Pourquoi utiliser les exceptions ?
Erreur la vérification est un élément essentiel de tout programme. Même si le travail du programmeur est parfait, entrée de l'utilisateur , le système de fichiers local et Internet est rarement , sinon jamais, parfait, si les programmes doivent être prêts à faire face aux problèmes . Souvent, cependant, la partie du code qui trouve le problème n'est pas la partie du code qui convient le mieux pour régler le problème . Une fonction qui divise un paragraphe de texte en mots devrait , idéalement , ne pas avoir à s'inquiéter de savoir si un paragraphe vide est une erreur qui nécessite la fermeture du programme , un événement étrange qui doit être signalé à l'utilisateur, ou non pertinentes. Exceptions lui permettent de signaler le problème à d'autres parties du programme qui sont mieux adaptés à corriger.
Pourquoi utiliser les exceptions personnalisées?
Java est livré avec des dizaines d' exceptions classes prédéfinies , cependant, il est parfois utile d'avoir un ensemble d'exceptions qui s'adaptent le mieux le problème à la main , de sorte que le programme puisse plus facilement y réagir. Par exemple, plutôt que générique de Java " InvalidArugmentException , « la partie du code responsable de la récupération d'erreurs peut avoir besoin de connaître plus de détails sur le problème. Cela pourrait être fait en divisant l'exception en custom " UnexpectedNullArgumentException " et " OutOfRangeException . "