One fault with checked exceptions is how inheritence was used to group what 
is checked and what is unchecked. Unfortunately an analysis of the JDK etc 
seems to show that exceptions use inheritence as a grouping mechanism. The 
JDK often establishes a base exception for a sub system and has all related 
exceptions extend that. 

2 Examples:

java.io.*
   IOException // generally not recoverable probably should be unchecked
    FileNotFound // probably makes sense to be checked, so programs are 
forced to handle and maybe ask user again.
       RemoteException // probably the most famous this should be unchecked 
exception
       EOFException // checkness should be the same as IOException.

Perhaps just perhaps the problem is that heirarchy is both a grouping 
mechanism and a way to define checkness. Maybe keyword might have helped.

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to