What are your thoughts on code that looks like this:
public void doSomething() { try { // actual code goes here } catch (Exception ex) { throw; } }
The problem I see is the actual error is not handled, just throwing the exception in a different place. I find it more difficult to debug because i don’t get a line number where the actual problem is.
So my question is why would this be good?
—- EDIT —-
From the answers it looks like most people are saying it’s pointless to do this with no custom or specific exceptions being caught. That’s what i wanted comments on, when no specific exception is being caught. I can see the point of actually doing something with a caught exception, just not the way this code is.
Depending on what quality you are looking at it is not throwing the exception in a different place. ‘throw’ without a target rethrows the exception which is very different from throwing an exception. Primarily a rethrow does not reset the stack trace.
In this particular sample, the catch is pointless because it doesn’t do anything. The exception is happily rethrown and it’s almost as if the try/catch didn’t exist.