Envoyé par
tchize_
Pour avoir écrit du code de traitement d'erreur, dans lequel tu catch 10 exceptions de nature différentes, pour mettre exactement le même code dedans (et je plaisante pas, c'est du log, de la mise en valeur par défaut et du retour, soit en moyenne 5 lignes dupliquées à chaque fois), c'est chiant, illisible et surchargé! Et pour ceux qui disent 'on peut faire un catch sur le type parent commun c'est la même chose...', NON! Ce n'est absolument pas la même chose. Un catch sur le parent commun catch *aussi* ce qu'on ne veux pas catcher, ce qui fait qu'on va quand meme se tapper une tartine de test en dessous pour tout filter et faire des throw de ce dont on avait pas besoin.
Par contre la forme ne me plait pas, elle ne permet pas de typer spécifiquement e, qui peut dans certains cas etre une RuntimeException, dans d'autre une Exception, dans d'autres cas un Throwable.... A l'auteur de décider je trouve.
Le but de ce code n'est pas de faire des catch ou il faut se comporter différement suivant le type, le but est de regrouper les catchs dont le code est identique et pour lequel un type d'exception commun est utilisable, mais ou on ne veux *pas* catcher Tout ce qui correspond au type commun (exemple, on veux catcher 6 RuntimeException)