This week's book giveaway is in the OCPJP forum. We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line! See this thread for details.
How can it print EOFException, if you don't put in the code to output the exception? You're catching the exception, so it is considered handled, unlike a runtime exception. If you change your catch block to look like this: