10 erreurs à éviter dans la programmation java

Voici 10 rappels rapides pour éviter les erreurs faciles lorsque vous programmez les applications Android avec le code Java. Écrire vos propres programmes Java sera beaucoup plus facile et plus lisse lorsque vous exécutez à travers cette liste de contrôle.

Sommaire

Majuscules mis où ils appartiennent

Java est un langage sensible à la casse, si vous avez vraiment l'esprit de votre Ps et Qs - avec tous les autres lettres de l'alphabet. Voici quelques concepts à garder à l'esprit que vous créez des programmes Java:

  • Les mots-clés de Java sont tous complètement minuscules. Par exemple, dans un Java si déclaration, le mot si ne peut pas être Si ou SI.

  • Lorsque vous utilisez des noms de l'interface de programmation Java Application (API), le cas des noms doit correspondre à ce qui apparaît dans l'API.

  • Vous devez également vous assurer que les noms que vous faire vous-même sont capitalisés de la même manière dans l'ensemble du programme. Si vous déclarez une mon compte variable, vous ne peut pas se référer à lui comme Mon compte, mon compte, ou Mon compte. Si vous capitalisez le nom de la variable de deux manières différentes, Java pense que vous faites allusion à deux variables complètement différentes.

Sortir d'une instruction switch

Si vous ne cassez pas d'un interrupteur déclaration, vous obtenez fall-through. Par exemple, si la valeur de rouleau est 7, le code suivant imprime tous les trois mots - victoire, continuer, et perdre:

interrupteur (rouleau) {case 7: System.out.println ("gagner") - Cas 10: System.out.println ("continuer") - Cas 12: System.out.println («perdre») -}

Comparer les valeurs avec un double signe égal

Lorsque vous comparez deux valeurs avec un autre, vous utilisez un double signe égal. La ligne

si (== inputNumber randomNumber)

est correcte, mais la ligne

si (inputNumber = randomNumber)

n'est pas correcte.

Ajouter des écouteurs pour gérer les événements

Vous voulez savoir quand l'utilisateur clique sur un widget, quand une animation se termine, ou lorsque quelque chose se passe, de sorte que vous créez auditeurs:




MainActivity public class étend activitémet en œuvre onclickListener, AnimationListener {... public void onclick (Voir vue) {...} public void onAnimationEnd (Animation animation) {...}

Lorsque vous créez auditeurs, vous devez vous rappeler de mettre les auditeurs:

 Widget ImageView = new ImageView (cette) -widget.setonclickListener(cette) -... AlphaAnimation animation = new AlphaAnimation (0.0f, 1.0F) -animation.setAnimationListener(ce)-...

Si vous avez oublié l'appel à setonclickListener, rien ne se passe lorsque vous cliquez sur le widget. En cliquant sur le widget difficile une deuxième fois ne contribue pas.

Définir les constructeurs requises

Lorsque vous définissez un constructeur avec des paramètres, comme dans

Température publique (numéro double)

Java ne crée plus un constructeur sans paramètre par défaut pour vous. En d'autres termes, vous ne pouvez plus appeler

Température roomTemp = new Température () -

à moins que vous définissiez votre propre parameterless Température constructeur.

Fixer références non statiques

Si vous essayez de compiler le code suivant, vous obtenez un message d'erreur:

classe WillNotWork {String greeting = "Bonjour" void main (String args []) {System.out.println -publics statiques (saluant) -}}

Vous obtenez un message d'erreur parce que principal est statique, mais salutation est pas statique.

Restez 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

invités int [] = new int [10] -

vous pouvez vous référer à la invités les composants de tableau par écrit invités [0], clients [1], et ainsi de suite, tout le chemin jusqu'à invités [9]. Vous ne pouvez pas écrire invités [10], parce que le invités tableau n'a pas de composante d'indice 10.

Anticiper les pointeurs nuls

Ces exemples ne sont pas sujettes à jeter le NullPointerException, mais dans la vie réelle programmation Java, vous voyez cette exception tout le temps. UN NullPointerException vient quand vous appelez une méthode sur une expression qui ne possède pas une valeur «légitime». Voici un exemple pas cher:

public class ThrowNullPointerException {static void main (String [] args) {String publics myString = null-affichage (myString) -} static affichage vide (String aString) {if {System.out (Les aString.contains («confidentiel»)!) .println (aString) -}}}

La afficher méthode affiche une chaîne de caractères que si cette chaîne ne contient pas le mot confidentiel. Le problème est que le maChaine variable (et donc la un string paramètre) ne renvoie pas à une chaîne de toute nature - pas même à la chaîne vide ("").

Lorsque l'ordinateur atteint l'appel à aString.contains, l'ordinateur recherche un contient méthode appartenant à nul. Mais nul c'est rien. La nul la valeur n'a pas de méthodes. Ainsi, vous obtenez un grand NullPointerException, et le programme vient écraser autour de vous.

Pour éviter ce genre de calamité, réfléchir à deux fois tout appel de méthode dans votre code. Si l'expression avant le point peut éventuellement être nul, ajouter du code gestion des exceptions à votre programme:

try {if {System.out.println (aString) (aString.contains («confidentiel»)!) -}} catch (NullPointerException e) {System.out.println ("La chaîne est nulle.») -}

Utiliser des autorisations

Certaines applications nécessitent des autorisations explicites. Par exemple, une application peut parler aux serveurs de Twitter sur Internet. Cela ne fonctionne pas, sauf si vous ajoutez un élément à l'application de AndroidManifest.xml fichier:

Si vous oubliez d'ajouter l' élément à votre AndroidManifest.xml fichier, l'application ne peut pas communiquer avec les serveurs de Twitter. L'application échoue sans afficher de message d'erreur utile. Dommage!

L'activité non trouvé

Si vous créez une seconde activité pour votre application, vous devez ajouter un nouveau élément dans l'App de AndroidManifest.xml fichier. Par exemple, une application Android pourrait avoir deux activités: Activité principale et MyListActivity.

Eclipse crée automatiquement une élément, mais vous devez taper votre propre élément pour le MyListActivity:

Si vous ne pas ajouter ce élément, Android ne peut pas trouver le MyListActivity classe, même si le MyListAcitivity.java fichier est dans le répertoire de projet Eclipse de l'application. Votre application se bloque avec un ActivityNotFoundException.

Et cela fait toute la différence.


» » » » 10 erreurs à éviter dans la programmation java