title: If catching null pointer exception is not a good practice, is catching exception a good one?
body: <p>I have heard that catching <code>NullPointerException</code> is a bad practice, and i think it is sensibly so. Letting the <code>NullPointerException</code> to propagate to the top would allow the detection of a something going wrong. But many times I have seen many of my friends catching <code>Exception</code> directly so that they need not bother about all the different kinds of exceptions that might occur in the above code. Is this a good practice? What are the other kinds of exceptions that are best left unhandled? And besides it also makes sense to me to handle <code>NullPointerException</code> over a specific code where we are sure of the source of the exception. So when are exceptions to be handled and when should they not be handled? And what would be the possible list of exception that are best left unhandled?</p>