Reading documentation or using any tool that helps you know by informing which exceptions can be thrown. Although this is not so accurate, so capturing Exception
is not a good idea.
If you re-launch the exception you are doing something wrong, if you just re-launch it do not capture it. People capture far more exceptions than they should. They can hardly ever do anything useful with it. So let it spread.
In Java, too, there are not many exceptions, and the ones they have are considered problematic in many situations even by most Java programmers who know what they are talking about.
For all this I think exception a wrong engine most of the time .
The Java mechanism that indicates that an exception can be thrown is very controversial and practice has shown that it brings more problems than solutions.