Exception
Une exception (abréviation de "événement exceptionnel") est une erreur ou un événement inattendu se produisant programme est en cours d'exécution. Lorsqu'une exception se produit, le flux du programme est interrompu. Si le programme peut gérer et traiter l'exception, il peut continuer à s'exécuter. Si une exception n'est pas gérée, le programme peut être obligé de quitter.
Plusieurs groupes de langages de programmation prendre en charge les exceptions, bien qu'elles soient utilisées de différentes manières Par exemple, les exceptions font partie intégrante de la Java la langue et sont souvent à contrôler le flux d'un programme. Java comprend un Exception classe, qui a des dizaines de sous-classes, telles que TimeoutException, UserException biologique et IOException. Sous-classes comme IOException contient des exceptions plus spécifiques comme FileNotFoundException et CharacterCodingException qui peut être "jeté" si un filet est introuvable ou le Encodage de caractère d'un un magnifique n'est pas reconnu.
D'autres langues n'utilisent des exceptions que pour capturer les fondamentaux erreurs d'exécution, comme l'échec de l'allocation Mémoire ou des erreurs au niveau du système. Par exemple, un C + + programme peut lancer le bad_alloc exception lorsque la mémoire ne peut pas être allouée et la erreur système exception lorsque le le système d'exploitation produit une erreur.
Gestion des exceptions
Un programme informatique bien écrit vérifie les exceptions et les gère correctement. Cela signifie que le promoteur doit vérifier les exceptions probables et écrire code pour les traiter. Si un programme gère bien les exceptions, des erreurs inattendues peuvent être détectées et gérées sans s'écraser le programme.
Les exceptions sont "levées" lorsqu'elles se produisent et sont "capturées" par un autre code du programme. Ils peuvent être lancés explicitement en utilisant le jeter déclaration ou implicitement dans un Essai clause. Ci-dessous un exemple de "try / catch" syntaxe en Java. Le code suivant tente de diviser par zéro, mais jette un Exception arithmétique exception et renvoie 0 comme résultat.
1. int a = 11;
2. int b = 0;
3. int result = 0;
4. essayer {
5. int c = a / b;
6. résultat = c;
7. } catch (ArithmeticException ex) {
8. résultat = 0;
9. }
10. retourne le résultat;
Une exception est levée sur la ligne 5 (lorsque 11 est divisé par 0), le reste de l'instruction try (ligne 6) n'est donc pas exécuté. Au lieu de cela, l'exception est interceptée sur la ligne 7 et un résultat de 0 est renvoyé.