logo

CuriousTab

CuriousTab

Exceptions problems


  • 1. 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?
    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");
    }
    

  • Options
  • A. The code will not compile.
  • B. Code output: Start Hello world File Not Found.
  • C. Code output: Start Hello world End of file exception.
  • D. Code output: Start Hello world Catch Here File not found.
  • Discuss
  • 2. Given that all methods of class FileOutputStream, including close(), throw an IOException, which of these is true?
    import java.io.*;
    public class MyProgram 
    {
        public static void main(String args[])
        {
            FileOutputStream out = null;
            try 
            {
                out = new FileOutputStream("test.txt");
                out.write(122);
            }
            catch(IOException io) 
            {
                System.out.println("IO Error.");
            }
            finally 
            {
                out.close();
            }
        }
    }
    

  • Options
  • A. This program will compile successfully.
  • B. This program fails to compile due to an error at line 4.
  • C. This program fails to compile due to an error at line 6.
  • D. This program fails to compile due to an error at line 18.
  • Discuss
  • 3. Which statement is true?

  • Options
  • 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.
  • Discuss
  • 4. Which statement is true?

  • Options
  • 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.
  • Discuss
  • 5. Which answer most closely indicates the behavior of the program?
    public class MyProgram 
    {
        public static void throwit() 
        {
            throw new RuntimeException();
        }
        public static void main(String args[])
        {
            try 
            {
                System.out.println("Hello world ");
                throwit();
                System.out.println("Done with try block ");
            }
            finally 
            {
                System.out.println("Finally executing ");
            }
        }
    }
    

  • Options
  • A. The program will not compile.
  • B. The program will print Hello world, then will print that a RuntimeException has occurred, then will print Done with try block, and then will print Finally executing.
  • C. The program will print Hello world, then will print that a RuntimeException has occurred, and then will print Finally executing.
  • D. The program will print Hello world, then will print Finally executing, then will print that a RuntimeException has occurred.
  • Discuss
  • 6. At Point X on line 5, which code is necessary to make the code compile?
    public class ExceptionTest 
    { 
        class TestException extends Exception {} 
        public void runTest() throws TestException {} 
        public void test() /* Point X */ 
        { 
            runTest(); 
        } 
    }
    

  • Options
  • A. No code is necessary.
  • B. throws Exception
  • C. catch ( Exception e )
  • D. throws RuntimeException
  • Discuss
  • 7. Which four can be thrown using the throw statement?

    1. Error
    2. Event
    3. Object
    4. Throwable
    5. Exception
    6. RuntimeException

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

First 2