Quelle est la règle générale à suivre pour décider s'il faut ajouter une clause throws à une méthode ou utiliser un try-catch ?
D'après ce que j'ai lu moi-même, les throws doivent être utilisés lorsque l'appelant n'a pas respecté sa part du contrat (objet passé) et les try-catch doivent être utilisés lorsqu'une exception se produit au cours d'une opération effectuée dans la méthode. Est-ce correct ? Si oui, que doit-on faire du côté de l'appelant ?
P.S. : J'ai fait des recherches sur Google et SO mais j'aimerais avoir une réponse claire sur ce point.
6 votes
J'ai toujours été un adepte de l'approche "Si cela a du sens de traiter le problème ici... alors faites-le".
0 votes
J'aime que toutes mes exceptions soient traitées là où elles se produisent, afin de ne pas avoir à les gérer par la suite.