Proposal: Improved Exception Handling for Java (original) (raw)
Stephen Colebourne scolebourne at joda.org
Tue Mar 3 00:54:39 PST 2009
- Previous message: Proposal: Improved Exception Handling for Java
- Next message: Proposal: Improved Exception Handling for Java
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Neal Gafter wrote:
What happens if someone writes
catch(final IOException | SomeSubclassOfIOException e) {...} In other words, is it legal to have subclasses of a caught exception listed too? I don't really care one way or the other. As written, yes, it is allowed and means the same thing as the supertype alone.
I would continue to allow this in the spec. It means that if someone refactors exceptions changing the hierarchy, then another part of the code with a multi-catch will continue to compile and have the same meaning.
How could the increased exception precision be maintained will still allow programs such as the one above to compile? I don't think it can without making rather complex rules, but I'll think about it more. However, one could take only the multicatch part of this proposal and not the final/rethrow part, and then I believe one could specify it without there being a breaking change.
I would prefer to see them added to Project Coin as two separate proposals. (I have some usability concerns with rethrow, but am OK with multi-catch)
Stephen
- Previous message: Proposal: Improved Exception Handling for Java
- Next message: Proposal: Improved Exception Handling for Java
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]