? Des exceptions peuvent causer des programmes Java à planter , mais lorsqu'ils sont utilisés correctement , ils permettent également aux programmeurs de créer des applications qui peuvent faire face à des événements imprévus . Nombre exceptions se produisent souvent lorsque des programmes tentent d'analyser le nombre , la conversion de chaînes de caractères en valeurs numériques . Si un programme Java utilise un procédé dans lequel un nombre n'est pas du type attendu , il peut jeter un format numérique Exception . En comprenant les exceptions , vous pouvez apprendre comment créer des programmes qui fournissent des fonctionnalités fiables. Types d'exceptions
programmes Java
peuvent jeter de nombreux types d' exception. Le numéro Format Exception est l'exception numérique la plus courante . Une exception d'exécution , il étend la classe Exception Argument illégal . Normalement, cette exception se produit lorsque vous utilisez une méthode pour tenter d' analyser une chaîne comme un nombre, mais le contenu de la chaîne n'est pas un numéro du type correct. Parce qu'il est une exception non vérifiée , vos programmes peuvent compiler sans votre environnement de développement intégré pour vous avertir de l' erreur possible. Le numéro Format exception se produit seulement si un programme passe entrée inapproprié à une méthode, de sorte que vous ne pouvez le découvrir lorsque l'application s'exécute .
Provoque
Le langage Java wrapper classes fournissent des représentations objets des types numériques primitifs , y compris integer, float et double . Grâce à ces cours , les programmes peuvent analyser les valeurs de chaîne que les types numériques , comme suit :
Integer.parseInt ( "3" ) ;
Ce code s'exécute sans erreur, car le paramètre de chaîne passée contient une valeur de numéro . Cependant, l'appel de la méthode suivante provoque Java de jeter un format numérique Exception parce que la chaîne ne contient pas un nombre :
Integer.parseInt ( "r") ;
Le code suivant provoque également l'exception, parce que même si la chaîne est un nombre , ce n'est pas un entier:
Integer.parseInt
( "3.5" ) ;
Toutes ces extraits de code compiler et d'exécuter , de sorte le programmeur ne peut prendre conscience de l'erreur à l'exécution. Les valeurs ne sont pas normalement fournis explicitement , mais sont lues à partir d'une source externe ou une valeur variable.
Catching
Vous pouvez attraper Nombre Exceptions format si vos programmes sont susceptibles de les jeter . En ajoutant votre code d'analyse numérique à un bloc try, puis fournir une prise noire après , vous pouvez créer des programmes qui continueront à fonctionner même si un format numérique Exception pose . L'exemple de code suivant illustre cette structure:
try { Integer.parseInt ( numstring ) ; } catch ( NumberFormatException numExc ) {System.out.println ( numExc.getMessage ()); }
la chaîne d'analyse , dans ce cas est représentée comme une référence variable , de sorte que son contenu est inconnu. Si le contenu de la chaîne ne peut être analysé comme un entier, le code saute immédiatement au bloc catch , où vous pouvez fournir un traitement alternatif.
Lancer
ainsi que la capture exceptions , les développeurs peuvent créer des programmes Java dans lequel ils jettent des exceptions personnalisées . C'est une tactique commune avec exceptions non comme format numérique . Le code modifié suivant montre :
catch ( NumberFormatException numExc ) { throw new BadNumberException (); }
Cela permet aux programmeurs de définir leur propre classe d' exception personnalisée , qui peut être un type vérifié , et de fournir une stratégie d'adaptation adapté à l'application .