Considérons le code suivant:
public Object getClone(Cloneable a) throws TotallyFooException {
if (a == null) {
throw new TotallyFooException();
}
else {
try {
return a.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
}
//cant be reached, in for syntax
return null;
}
L' return null;
est nécessaire depuis une exception peut être pris, cependant, dans de tels cas, puisque nous avons déjà vérifié si il était nul (et supposons que nous connaissons la classe que nous appelons prend en charge le clonage), donc nous savons que le rapport d'essai ne manquera jamais.
Est-ce une mauvaise pratique à mettre dans le return à la fin juste pour satisfaire la syntaxe et d'éviter les erreurs de compilation (avec un commentaire expliquant qu'il ne sera pas atteint), ou est-il une meilleure façon de coder quelque chose comme cela pour que le retour supplémentaire déclaration est inutile?