Home / Java Programming / Exceptions :: Discussion

Discussion :: Exceptions

  1. 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 ");
            }
        }
    }
    
    which answer most closely indicates the behavior of the program?
  2. 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.

    View Answer

    Workspace

    Answer : Option D

    Explanation :

    Once the program throws a RuntimeException (in the throwit() method) that is not caught, the finally block will be executed and the program will be terminated. If a method does not handle an exception, the finally block is executed before the exception is propagated.


Be The First To Comment