Accueil Finances personnelles Programmation Java: Quand des erreurs surviennent, des erreurs

Programmation Java: Quand des erreurs surviennent, des erreurs

Table des matières:

Vidéo: APPRENDRE LE JAVA #13 - LES EXCEPTIONS 2024

Vidéo: APPRENDRE LE JAVA #13 - LES EXCEPTIONS 2024
Anonim

Des erreurs dans les applications Java peuvent survenir à différents moments. Cependant, vous pouvez classifier globalement lorsqu'une erreur se produira dans deux catégories, au moment de la compilation et de l'exécution, comme décrit dans les sections suivantes.

Erreurs de compilation

Le compilateur convertit le code de votre application en code octet Java. Au cours de ce processus, il prend le code lisible par l'utilisateur que vous écrivez et le convertit en quelque chose que le Java Runtime Environment (JRE) comprend.

Pour effectuer ce processus, le compilateur doit analyser le code, ce qui signifie qu'il lit le code de manière à déterminer sans ambiguïté ce que l'application doit faire, Je veux qu'il le fasse, et comment vous voulez que la tâche soit accomplie. Si vous ne respectez pas les règles d'écriture de code non ambigu, le compilateur affiche un message d'erreur. Ce message est en fait une sorte d'exception.

Analyser signifie lire l'entrée que vous fournissez, comme du code sous une forme lisible par l'homme, et la transformer en quelque chose d'autre, comme le code octet Java. Une application peut également analyser l'entrée de l'utilisateur. Par exemple, un utilisateur peut taper une chaîne que votre code d'application transforme en un nombre.

L'analyse syntaxique consiste donc à lire un type d'entrée, à interpréter cette entrée d'une manière spécifique, puis à produire une sortie basée sur l'entrée interprétée. Un analyseur génère une erreur lorsque l'entrée n'est pas ce qu'elle attend.

Par exemple, si l'utilisateur entre une chaîne contenant la lettre C et que vous attendiez une chaîne contenant un nombre, tel que 123, l'analyseur génère une exception indiquant que l'entrée est incorrecte.

Les erreurs de compilation sont les plus faciles à gérer parce que le compilateur vous dit normalement ce qui ne va pas et où l'erreur s'est produite. Même si l'information n'est pas exacte, le compilateur vous amènera au moins à la bonne zone du code cassé afin que vous puissiez rechercher l'erreur qu'il contient.

Pour que tout le monde comprenne exactement comment le langage Java est supposé fonctionner, les développeurs en créent une spécification. Cette spécification inclut les éléments de langage dans un langage spécial appelé Backus-Naur Form (BNF). L'utilisation de BNF est une méthode extrêmement précise de description d'une langue, de sorte qu'il n'y a aucun risque d'erreur d'interprétation de la part de qui que ce soit.

Vous pouvez voir un exemple de BNF pour le langage Java au Département d'Informatique - Daimi. Ne vous inquiétez pas trop de pouvoir lire cette spécification. La plupart des développeurs n'apprennent jamais à interpréter la BNF pour les langages qu'ils utilisent - c'est le domaine des développeurs de compilateurs.

Erreurs d'exécution

Le compilateur Java ne trouve pas toutes les erreurs dans votre code. Si la forme du code est correcte (c'est-à-dire que vous n'avez commis aucune erreur en tapant les éléments qui créent l'application), le compilateur ne trouvera pas l'erreur.

Par exemple, si vous initialisez une valeur numérique à 5 au lieu de 4, le compilateur ne peut pas trouver l'erreur pour vous parce que le compilateur n'a aucune idée que vous vouliez réellement écrire 4. Ces types d'erreurs créent erreurs d'exécution - ces erreurs qui se produisent à un moment donné de l'exécution de l'application.

Des erreurs d'exécution peuvent survenir à tout moment. Certaines erreurs sont plus susceptibles de se produire à des moments précis. La liste suivante vous donne des idées sur les moments où les erreurs d'exécution sont susceptibles de se produire:

  • Initialisation: Lorsque l'application démarre - avant qu'elle ne présente une interface quelconque à l'utilisateur ou n'effectue aucun travail utile - elle passe par une phase d'initialisation. C'est lors de la définition d'une variable au type incorrect ou en essayant d'utiliser une variable avant de l'initialiser sera remarqué. De nombreuses erreurs liées aux ressources se produisent également lors de l'initialisation car la plupart des applications ouvrent les ressources requises pendant cette période.

  • Mode de fonctionnement: Après l'initialisation d'une application, celle-ci est en mode de fonctionnement. S'il a une interface utilisateur, il commence à interagir avec l'utilisateur. C'est le moment où l'entrée de l'utilisateur est la plus importante.

    Vous trouverez également des variables initialisées de manière incorrecte à ce moment car l'utilisateur (ou le destinataire de la sortie de l'application, tel que le système) verra que la sortie est incorrecte. Les demandes d'utilisateur pour des ressources, telles qu'un fichier de données, créent également des erreurs pendant ce temps.

  • Traitement en arrière-plan: La plupart des erreurs de traitement en arrière-plan résultent de l'environnement (perte d'une connexion réseau), des ressources manquantes (fichier perdu), des variables initialisées incorrectement ou des erreurs dans l'application pour effectuer une tâche. Certaines tâches sont plus souvent exécutées en arrière-plan que d'autres.

    Par exemple, l'impression d'un document ou le téléchargement de ressources à partir d'Internet sont généralement effectués en arrière-plan, tandis que l'utilisateur continue de travailler avec l'application au premier plan.

  • Arrêt: Lorsque l'utilisateur (y compris les comptes système) indique à l'application qu'il n'est plus nécessaire, l'application passe par une phase d'arrêt. Au cours de cette phase d'arrêt, l'application ferme les fichiers et exécute d'autres tâches d'entretien qui garantissent que l'application ne gâche pas le système d'exploitation.

    Les erreurs les plus courantes pouvant survenir au cours de cette phase ne libèrent pas les ressources utilisées par votre application et ne sauvegardent pas les données sur le disque. Bien sûr, des erreurs de codage peuvent survenir à tout moment, et cette phase de fonctionnement ne fait pas exception. Vous pouvez dire à l'application de fermer cinq fichiers lorsque seulement quatre d'entre eux sont réellement ouverts.

Le JRE présente la plupart des erreurs d'exécution qu'il détecte comme des exceptions. Cependant, le JRE n'attrape pas toutes les erreurs dans votre application.Vous devez également regarder la sortie de votre application pour déterminer si la sortie correspond aux attentes que vous avez pour une entrée donnée.

En outre, il est important de vérifier l'état des ressources que vous utilisez pour vous assurer qu'elles ne sont pas endommagées d'une manière ou d'une autre. Par exemple, vous devez vous assurer que toutes les données que vous devez enregistrer dans un fichier se retrouvent réellement dans le fichier lorsque votre application s'arrête.

Java 8 met davantage l'accent sur la sécurité, ce qui signifie que vous verrez plus d'instances SecurityException pendant que vous travaillez avec votre application.

Voir une augmentation des exceptions de sécurité ne signifie pas que votre code est défectueux ou que Java 8 est rempli de bugs - cela signifie que Java 8 localise automatiquement et vous signale les problèmes qui pourraient causer des problèmes de sécurité.

La documentation SecurityException apparaît à Java. net. Bien sûr, vous voudrez savoir de quoi parle tout le brouhaha.

Programmation Java: Quand des erreurs surviennent, des erreurs

Le choix des éditeurs

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Lorsqu'un membre de l'équipe de projet est suropposée dans votre projet Microsoft Office Project 2007, vous pouvez prendre des mesures pour corriger le problème en utilisant les suggestions suivantes. Gardez à l'esprit que les circonstances de votre projet déterminent si une solution particulière est réalisable. Par exemple, vous pouvez ajouter des ressources uniquement si votre budget le permet ...

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Le concept de lignes de base multiples semble presque contraire définition d'une ligne de base. Après tout, le but d'une base de référence est de mettre l'enjeu proverbial dans le sable et de mesurer les progrès contre elle. Vous pouvez conserver plusieurs lignes de base dans Project 2013 à plusieurs fins. Considérez ces raisons: Vous avez un plan de base pour ...

Comment enregistrer une référence dans Project 2013 - mannequins

Comment enregistrer une référence dans Project 2013 - mannequins

Vous pouvez enregistrer une référence à tout moment en ouvrant la boîte de dialogue Définir la ligne de base dans Project 2013. Un paramètre - qui contrôle la manière dont le projet regroupe les données dans les tâches récapitulatives lorsque vous définissez une ligne de base pour une partie des tâches - nécessite une explication. Après avoir enregistré une base de données la première fois dans Project 2013, ...

Le choix des éditeurs

Comment classer les modèles d'analyse prédictive - mannequins

Comment classer les modèles d'analyse prédictive - mannequins

Vous avez plusieurs façons de classer les modèles utilisés pour l'analyse prédictive. En général, vous pouvez les trier en fonction des problèmes métier qu'ils résolvent et des principales fonctions métier qu'ils servent (ventes, publicité, ressources humaines ou gestion des risques, par exemple). L'implémentation mathématique utilisée dans le modèle (comme les statistiques, l'exploration de données et la machine ...

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Un exemple naturel de groupe auto-organisateur vous pouvez appliquer dans le comportement d'analyse prédictive est une colonie de fourmis à la recherche de nourriture. Les fourmis optimisent collectivement leur trajectoire de manière à prendre toujours le chemin le plus court possible vers une cible alimentaire. Même si vous essayez de déranger une colonie de fourmis et de les empêcher de ...

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Diverses statistiques, data-mining et des algorithmes d'apprentissage automatique sont disponibles pour votre modèle d'analyse prédictive. Vous êtes dans une meilleure position pour sélectionner un algorithme après avoir défini les objectifs de votre modèle et sélectionné les données sur lesquelles vous allez travailler. Certains de ces algorithmes ont été développés pour résoudre des problèmes métier spécifiques, améliorer des algorithmes existants ou fournir ...

Le choix des éditeurs

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Ne vous feront rien tout bien si vous ne pouvez pas gérer efficacement vos modèles de données. La fonction VLOOKUP est le roi de toutes les fonctions de recherche dans Excel. Le but de VLOOKUP est de trouver une valeur spécifique à partir d'une colonne de données où la valeur de ligne la plus à gauche correspond à un critère donné. Prenez ...

Excel Outils d'analyse de données - dummies

Excel Outils d'analyse de données - dummies

L'outil d'analyse d'excel est un complément utile qui fournit un ensemble complet d'outils d'analyse statistique . Voici quelques outils dans le ToolPak. Outil Analyse Anova: Facteur unique Analyse de variance pour deux échantillons ou plus Anova: Facteur double avec réplication Analyse de la variance avec deux variables indépendantes et observations multiples ...

Excelent Touches de raccourci d'entrée de données - mannequins

Excelent Touches de raccourci d'entrée de données - mannequins

Lorsque vous travaillez dans Excel et saisissez des données dans une cellule, il est essentiel pour compléter l'entrée soit en cliquant sur une autre cellule avec le pointeur de la souris ou en utilisant l'une des touches de raccourci pratiques montrées ici pour déplacer le curseur de la cellule: Appuyez sur les touches To Arrow (& uarr;, & darr; move ...