La bonne utilisation du try catch finally
Que ce soit dans l'ancienne ou dans la nouvelle syntaxe il ne FAUT PAS catcher directement Exception ou pire: Throwable, mais directement les types que l'on doit traiter.
1. utiliser finally quand on doit faire un traitement avant une sortie d'exception (le rollback le plus souvent) (edit: oops pas le rollback mais la fermeture de connection)
2. faire un catch pour faire ensuite un rethrow sans encapsulation ça n'est pas efficace et inutile: autant faire simple (lancer et catcher une exception est couteux, le instanceOf est également couteux)
3. même si le risque est faible, il y a toujours un risque qu'un traitement d'exception plante et on perd alors l'exception originelle: le traitement est faux.
Finalement, le seul cas ou il faut catcher toutes les exception est le plus haut niveau d'un serveur d'application, d'un service, bref quand on traite réellement les exceptions sans les relancer.
Il doit y avoir de bien meilleure sources que moi sur le bon usage de l'exception, mais à ma connaissance aucune ne conseille de catcher l'exception. Il faut rappeler ce qui nous semble les "règles de l'art", plutôt que proposer des contournements.
en conclusion, cette nouvelle syntaxe nous inciterait à utiliser correctement les exceptions en simplifiant la syntaxe du catch.