Comprendre Java ne peut pas trouver le message d'erreur de symbole

Lors de la compilation d'un programme Java, le compilateur crée une liste de tous les identifiants utilisés. S'il ne trouve pas à quoi se réfère un identifiant (par exemple, il n'y a pas de déclaration pour une variable) il ne peut pas terminer la compilation.

C’est ce que

impossible de trouver le symbole

un message d'erreur indique: le compilateur n'a pas suffisamment d'informations pour reconstituer ce que le code Java est destiné à exécuter.

Causes possibles de l'erreur «Impossible de trouver le symbole»

Bien que le code source Java contienne d'autres éléments tels que des mots clés, des commentaires et des opérateurs, l'erreur «Impossible de trouver le symbole» fait référence au nom d'un package, d'une interface, d'une classe, d'une méthode ou d'une variable spécifique. Le compilateur doit savoir à quoi chaque identifiant fait référence. Si ce n'est pas le cas, le code recherche essentiellement quelque chose que le compilateur ne comprend pas encore..

Certaines causes possibles de l'erreur Java «Impossible de trouver le symbole» incluent:

  • Essayer d'utiliser une variable sans la déclarer.
  • Mal orthographier un nom de classe ou de méthode. N'oubliez pas que Java est sensible à la casse et que les erreurs d'orthographe ne sont pas corrigées pour vous. En outre, les traits de soulignement peuvent être nécessaires ou non, alors faites attention au code qui les utilise alors qu'ils ne devraient pas être utilisés ou vice versa.
  • Les paramètres utilisés ne correspondent pas à la signature d'une méthode.
  • La classe empaquetée n'a pas été référencée correctement à l'aide d'une déclaration d'importation.
  • Identifiants Regardez les mêmes mais sont en fait différents. Ce problème peut être difficile à repérer, mais dans ce cas, si les fichiers source utilisent le codage UTF-8, vous pouvez utiliser certains identifiants comme s'ils étaient identiques, mais en réalité ils ne le sont pas parce qu'ils semblent simplement être orthographiés de la même manière.
  • Vous regardez le mauvais code source. Il peut sembler difficile de croire que vous lisez un code source différent de celui qui génère l'erreur, mais c'est certainement possible, en particulier pour les nouveaux programmeurs Java. Vérifiez soigneusement les noms de fichiers et l'historique des versions.
  • Vous en avez oublié une nouvelle, comme ceci: 
    String s = String ();
    , qui devrait être 
    String s = new String ();

Parfois, l'erreur provient d'une combinaison de problèmes. Par conséquent, si vous corrigez une chose et que l'erreur persiste, recherchez différents problèmes affectant toujours votre code.

Par exemple, il est possible que vous essayez d'utiliser une variable non déclarée et lorsque vous la corrigez, le code contient toujours des fautes d'orthographe.

Exemple d'une erreur Java «Impossible de trouver le symbole»

Prenons ce code comme exemple:

Ce code provoquera un

impossible de trouver le symbole

erreur car le

System.out

La classe n'a pas de méthode appelée «prontln»:

Les deux lignes sous le message expliqueront exactement quelle partie du code confond le compilateur.

Des erreurs telles que les asymétries de capitalisation sont souvent signalées dans un environnement de développement intégré dédié. Bien que vous puissiez écrire votre code Java dans n'importe quel éditeur de texte, l'utilisation d'IDE et de leurs outils de peluchage associés réduit les fautes de frappe et les décalages. Les IDE Java courants incluent Eclipse et NetBeans.