Question

Suppose the following code:

public static void somMethod() throws IOException {

try {
    // some code that can throw an IOException and no other checked exceptions
} catch (IOException e) {
        // some stuff here -- no exception thrown in this block
}

}

someMethod throws an IOException, and no other checked exception, and handles that exception itself.

What exactly

throws IOException 

in its declaration is bringing in? From what I know, it is making it possible for the methods calling someMethod() handle that IOException themselves.

is anything else happening here?

Was it helpful?

Solution

If the catch block doesn't throw IOException, the throws IOException part in the method signature is not necessary. And also, every time the someMethod() is invoked, there has to be provided a catch block for a possible exception that actually never occurs.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top