Exceptions

1

Which statement is true?

A. A try statement must have at least one corresponding catch block.
B. Multiple catch statements can catch the same class of exception more than once.
C. An Error that might be thrown in a method must be declared as thrown by that method, or be handled within that method.
D. Except in case of VM shutdown, if a try block starts to execute, a corresponding finally block will always start to execute.

2

Which four can be thrown using the throw statement?

    1. Error

    2. Event

    3. Object

    4. Throwable

    5. Exception

    6. RuntimeException


A. 1, 2, 3 and 4
B. 2, 3, 4 and 5
C. 1, 4, 5 and 6
D. 2, 4, 5 and 6

3

Which statement is true?

A. catch(X x) can catch subclasses of X where X is a subclass of Exception.
B. The Error class is a RuntimeException.
C. Any statement that can throw an Error must be enclosed in a try block.
D. Any statement that can throw an Exception must be enclosed in a try block.

4
System.out.print("Start ");
try 
{
    System.out.print("Hello world");
    throw new FileNotFoundException();
}
System.out.print(" Catch Here "); /* Line 7 */
catch(EOFException e) 
{
    System.out.print("End of file exception");
}
catch(FileNotFoundException e) 
{
    System.out.print("File not found");
}

and given that EOFException and FileNotFoundException are both subclasses of

IOException, and further assuming this block of code is placed into a class,

which statement is most true concerning this code?

A. The code will not compile.
B. Code output: Start Hello world File Not Found.
C. Code output: Start Hello world File Not Found.
D. Code output: Start Hello world Catch Here File not found.

5
public class ExceptionTest 
{ 
    class TestException extends Exception {} 
    public void runTest() throws TestException {} 
    public void test() /* Point X */ 
    { 
        runTest(); 
    } 
}

At Point X on line 5, which code is necessary to make the code compile?

A. No code is necessary.
B. throws Exception
C. catch ( Exception e )
D. throws RuntimeException