File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes exception Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Make it so: Java DB Connections & Transactions this week in the JDBC forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "exception" Watch "exception" New topic


Philip Mat

Joined: Jun 10, 2010
Posts: 14
I'm new to Java and I have the below code which when compiled gives the error:- unreported exception; must be caught or declared to be thrown.
Since I'm catching the IOException in my code, I think I don't really need to declare the IOException to be thrown on main method. It compiles successfully only when I declare the IOException to be thrown on main method.

What can be done to make this code compile successfully without declaring the IOException to be thrown on main method?
Ernest Friedman-Hill
author and iconoclast

Joined: Jul 08, 2003
Posts: 24195


Welcome to JavaRanch!

First, a bit of business: you may not have read our naming policy on the way in. It requires that you use a full, real (sounding) first and last name for your display name. Joke names aren't acceptable. You can change your display name here. Thanks!

Now, as to your question: Those "close" calls can throw IOException, and they're not in a try block. Yes, this is a pain, and yes, everybody hates this. Solution? Another try block inside the finally block, which catches the IOException.

[Jess in Action][AskingGoodQuestions]
Philip Mat

Joined: Jun 10, 2010
Posts: 14
Thank you ..
Campbell Ritchie

Joined: Oct 13, 2005
Posts: 45400
What Ernest means is something like that. Only I may have got some {} unbalanced because I am not used to reading indentation with more than one brace per line.
I agree. Here's the link:
subject: exception
It's not a secret anymore!