Sous-classe d'exception intégrée
Dans le package standard Java.lang, Java définit plusieurs classes d'exception. Certains d'entre eux ont été utilisés dans les exemples précédents. Ces exceptions sont généralement des sous-classes de la classe standard RuntimeException. Parce que Java.lang est en fait introduit par tous les programmes Java, la plupart des exceptions dérivées de RuntimeException sont automatiquement disponibles. De plus, ils n'ont pas besoin d'être inclus dans la liste des lancers de toute méthode. En Java, cela s'appelle une exception non contrôlée. Parce que le compilateur ne le vérifie pas pour voir si une méthode gère ou lance ces exceptions. Les exceptions non contrôlées définies dans Java.lang sont répertoriées dans le tableau 1. Le tableau 2 répertorie les exceptions qui doivent être incluses dans la liste des lancers des méthodes définies par java.lang, si ces méthodes peuvent générer l'une des exceptions mais ne peuvent pas le gérer par eux-mêmes. Ceux-ci sont appelés exceptions vérifiées. Java définit plusieurs autres types d'exceptions liés aux différentes classes de bibliothèque.
Tableau 1: Sous-classe d'exception non contrôlée définie dans Java.lang en Java
Tableau 2: Vérifiez l'exception définie dans java.lang
Créez votre propre sous-classe d'exception à l'aide de Java
Bien que la gestion des exceptions intégrée de Java les plus courantes de Java, vous souhaiterez peut-être créer votre propre type d'exception pour gérer les cas spéciaux que vous appliquez. C'est très simple: définissez simplement une sous-classe d'exception (l'exception est bien sûr une sous-classe de jetable). Vos sous-classes n'ont pas besoin de faire quoi que ce soit - leur présence dans le système de type vous permet de les utiliser comme exceptions.
La classe d'exception elle-même ne définit aucune méthode. Bien sûr, il hérite de certaines des méthodes fournies par Throwable. Par conséquent, toutes les exceptions, y compris celles que vous créez, peuvent obtenir la méthode définie à définir. Ces méthodes sont présentées dans le tableau 3. Vous pouvez également remplacer une ou plusieurs de ces méthodes dans la classe d'exception que vous créez.
Tableau 3 Méthodes définies par le jetable
L'exemple suivant déclare une nouvelle sous-classe d'exception, qui est ensuite utilisée comme signal pour une erreur dans la méthode. Il surcharge la méthode toString (), afin que la description de l'exception puisse être affichée avec println ().
// Ce programme crée un type d'exception personnalisé. } class exceptiondemo {static void calcul (int a) lance myException {System.out.println ("appelé calcul (" + a + ")"); .Println ("Exit normal");} public static void main (String args []) {try {calcul (1); e);}}
Cet exemple définit une sous-classe d'exception MyException. Cette sous-classe est très simple: il ne contient qu'un constructeur et une méthode ToString () surchargée qui affiche des valeurs aberrantes. La classe exceptiondemo définit une méthode calcul (). Cette méthode lance un objet MyException. Cette exception est soulevée lorsque le paramètre entier de calcul () est supérieur à 10.
La méthode Main () met en place un gestionnaire d'exceptions pour MyException, puis appelle Compute () avec une valeur juridique et une valeur illégale pour afficher différents chemins d'exécution via le code. Voici les résultats:
Appelé calcul (1) le calcul normal (20) a attiré MyException [20]