Я проверяю новые функции Java SE7, и в настоящее время я нахожусь в этой точке:
http://docs.oracle.com/javase/7/docs/technotes/guides/language/catch-multiple.html
что касается функции "поймать несколько", когда я наткнулся на это утверждение:
Примечание. Если блок catch обрабатывает несколько типов исключений, параметр catch неявно является окончательным. В этом примере параметр catch ex является окончательным, и поэтому вы не можете присвоить ему какие-либо значения в блоке catch.
Я никогда не замечал, что перехваченное исключение не является окончательным в классическом случае обработки перехваченных исключений.
Мне просто интересно, почему это хорошая вещь в первую очередь? Разве не было бы неправильным по существу модифицировать пойманное исключение, прежде чем я угадаю, что оно будет переброшено или, возможно, будет записано сообщение? Разве не должно быть механизмом создания создавать исключение, чтобы оно точно представляло, что должно?
Я никогда не видел, чтобы исключение было изменено в блоке catch. Может быть, кто-то скажет, что это полезно?