This week's book giveaways are in the Refactoring and Agile forums. We're giving away four copies each of Re-engineering Legacy Software and Docker in Action and have the authors on-line! See this thread and this one for details.
IOException is a checked exception you are trying to catch it but it's not thrown so the compiler is smart and throws a compile time error. But this is not the case with the class Exception , even though it's not thrown explicitly , there are possibility of getting runtime exceptions like NullPointer hence it compiles [ October 13, 2005: Message edited by: Srinivasa Raghavan ]