Parfois, lors de l'écriture de Java dans Eclipse, j'écris du code qui génère des avertissements. Une commune est-ce que je reçois quand l'extension de la classe Exception
:Est-ce une bonne pratique de supprimer les avertissements?
public class NumberDivideException extends Exception {
public NumberDivideException() {
super("Illegal complex number operation!");
}
public NumberDivideException(String s) {
super(s);
}
} // end NumberDivideException
L'avertissement:
La NumberDivideException classe sérialisable ne déclare pas un champ serialVersionUID static final de type long.
Je sais que cet avertissement est causé par mon échec à ... eh bien, il dit juste au-dessus. Je pourrais le résoudre en incluant le serialVersionUID
, mais c'est une minuscule tâche d'une heure pour l'école; Je ne prévois pas le sérialiser de sitôt ...
L'autre option, bien sûr, est de laisser Eclipse ajouter .
Mais chaque fois que ma souris survole l'option Suppress
, je me sens un peu coupable.
Pour la programmation en général, est-ce une bonne habitude de supprimer les avertissements?
(également, comme une question de côté, est l'ajout d'un « généré » serialVersionUID
comme serialVersionUID = -1049317663306637382L;
la bonne façon d'ajouter un serialVersionUID
, ou dois-je déterminer le nombre d'une autre manière?)
EDIT : En voyant les réponses, il semble que ma question soit légèrement argumentative ... Désolé! Trop tard pour moi de supprimer si ...
Puis-je respectueusement en désaccord? Eclipse, que l'OP utilise, a des options pour émettre des avertissements sur l'utilisation de fonctionnalités linguistiques utiles (par ex. Boxing/unboxing). Je trouve cela assez douloureux. – msandiford
Tom, avez-vous programmé C ou C++ dans MSVC avec ses avertissements "utiles" sur les fonctions standard parfaitement normales? – KTC
Oui J'ai utilisé de nombreux environnements C++/C différents. Il y a des directives de pré-processeur pour désactiver les avertissements ligne par ligne dans chacun de ceux que je connais. En ce qui concerne Eclipse, boxing/unboxing est quelque chose qui est potentiellement coûteux et devrait être un avertissement. Je pense juste qu'il est raisonnable de forcer le développeur à penser à chaque avertissement pendant 30 secondes et prendre une décision consciente de passer outre chaque occurrence. Ocassionally, le compilateur sait mieux. –