Table des matières:
- Mettre les lettres majuscules là où elles appartiennent
- Rupture d'une instruction switch
- Comparer des valeurs avec un double signe égal
- Ajout de composants à une interface graphique
- Ajout d'écouteurs pour gérer les événements
- Définition des constructeurs requis
- Correction de références non statiques
- Rester dans les limites d'un tableau
- Prévoir les pointeurs NULL
- Aider Java à trouver ses fichiers
Vidéo: Poisson rouge : 10 erreurs de débutant 2024
Trouvez des erreurs courantes dans la programmation Java avant de les créer. Voici une courte liste de dix choses à surveiller dans votre code.
Mettre les lettres majuscules là où elles appartiennent
Java est un langage sensible à la casse, donc vous devez vraiment vous occuper de vos P s et Q - ainsi que de toutes les autres lettres de l'alphabet. Voici quelques détails à garder à l'esprit lorsque vous créez des programmes Java:
-
Les mots-clés de Java sont entièrement en minuscules. Par exemple, dans une instruction Java if, le mot if ne peut pas être If ou IF.
-
Lorsque vous utilisez des noms de l'API Java (Application Programming Interface), la casse des noms doit correspondre à ce qui apparaît dans l'API.
-
Vous devez également vous assurer que les noms que vous créez vous-même sont capitalisés de la même manière tout au long de votre programme. Si vous déclarez une variable myAccount, vous ne pouvez pas vous y référer en tant que MyAccount, myaccount ou Myaccount. Si vous mettez en majuscule le nom de la variable de deux manières différentes, Java pense que vous faites référence à deux variables complètement différentes.
Rupture d'une instruction switch
Si vous n'échappez pas à une instruction switch, vous obtenez une erreur. Par exemple, si la valeur du verset est 3, le code suivant imprime les trois lignes - Dernier refrain, Il est une douleur et N'a pas de cerveau.
interrupteur (verset) {cas 3: sortie. print ("Dernier refrain"); en dehors. println ("dernier refrain"); cas 2: sortir. imprimer ("Il fait mal"); en dehors. println ("il est douloureux"); cas 1: sortir. print ("N'a pas de cerveau"); en dehors. println ("n'a pas de cerveau");}
Comparer des valeurs avec un double signe égal
Lorsque vous comparez deux valeurs entre elles, vous utilisez un double signe égal. La ligne
if (inputNumber == randomNumber)
est correcte, mais la ligne
if (inputNumber = randomNumber)
n'est pas correcte.
Ajout de composants à une interface graphique
Voici un constructeur pour un cadre Java:
public SimpleFrame () {JButton button = new JButton ("Merci …" ); setTitle ("… Connie Santisteban et Brian Walls" ); setLayout (nouveau FlowLayout ()); ajouter (bouton); . addActionListener (this); setSize (300, 100); setVisible (true);}
Quoi que vous fassiez, n'oubliez pas l'appel à la méthode add. Sans cet appel, vous allez à tout le travail de création d'un bouton, mais le bouton n'apparaît pas sur votre image.
Ajout d'écouteurs pour gérer les événements
Regardez à nouveau le code de la section précédente pour construire un SimpleFrame. Si vous oubliez l'appel à addActionListener, rien ne se passe lorsque vous cliquez sur le bouton. Cliquer plus fort sur le bouton une seconde fois n'aide pas.
Définition des constructeurs requis
Lorsque vous définissez un constructeur avec des paramètres, comme dans
public Temperature (double nombre)
, l'ordinateur ne crée plus pour vous un constructeur par défaut sans paramètre. En d'autres termes, vous ne pouvez plus appeler
Température roomTemp = nouvelle température ();
sauf si vous définissez explicitement votre propre constructeur de température sans paramètre.
Correction de références non statiques
Si vous essayez de compiler le code suivant, vous obtenez un message d'erreur:
class WillNotWork {String greeting = "Hello"; public void principal (String args []) {System. en dehors. println (message d'accueil);}}
Vous obtenez un message d'erreur parce que main est statique, mais le message d'accueil n'est pas statique.
Rester dans les limites d'un tableau
Lorsque vous déclarez un tableau avec dix composants, les composants ont des indices de 0 à 9. En d'autres termes, si vous déclarez
int guests [] = nouvel int [10];
vous pouvez alors faire référence aux composants du tableau des invités en écrivant des invités [0], des invités [1], etc., jusqu'au client [9]. Vous ne pouvez pas écrire d'invités [10], car le tableau des invités n'a pas de composant avec l'index 10.
Prévoir les pointeurs NULL
Les exemples de ce livre ne sont pas enclins à lancer NullPointerException, mais dans la programmation Java réelle, vous voyez cette exception tout le temps. Une exception NullPointerException survient lorsque vous appelez une méthode supposée renvoyer un objet, mais que la méthode ne renvoie rien. Voici un exemple bon marché:
import static java. lang. Système. en dehors; importer Java. io. Fichier; class ListMyFiles {public static void principal (String args []) {File myFile = nouveau fichier (" windows" ); String dir [] = monFichier. liste(); pour (String fileName: dir) {out. println (fileName);}}}
Ce programme affiche une liste de tous les fichiers dans le répertoire windows.
Mais que se passe-t-il si vous changez windows en quelque chose d'autre - quelque chose qui ne représente pas le nom d'un répertoire?
Fichier monFichier = nouveau fichier ("& *% $!!" );
Ensuite, le nouvel appel de fichier renvoie null (un mot Java spécial signifiant rien ), donc la variable myFile n'a rien dedans. Plus tard dans le code, la variable dir ne fait référence à rien, et la tentative de faire une boucle sur toutes les valeurs de dir échoue lamentablement. Vous obtenez une grosse NullPointerException, et le programme s'écroule autour de vous.
Pour éviter ce genre de calamité, consultez la documentation API de Java. Si vous appelez une méthode qui peut renvoyer null, ajoutez le code de gestion des exceptions à votre programme.
Aider Java à trouver ses fichiers
Vous compilez du code Java, en faisant attention à votre propre entreprise, lorsque l'ordinateur vous donne une erreur NoClassDefFoundError. Toutes sortes de choses peuvent mal tourner, mais les chances sont bonnes que l'ordinateur ne trouve pas un fichier Java particulier. Pour résoudre ce problème, vous devez aligner correctement toutes les planètes:
-
Votre répertoire de projet doit contenir tous les fichiers Java dont les noms sont utilisés dans votre code.
-
Si vous utilisez des packages nommés, votre répertoire de projet doit avoir des sous-répertoires nommés de manière appropriée.
-
Votre CLASSPATH doit être réglé correctement.