Multiple choice technology

What will be output if you try to compile and run the following code, but there is no file called Hello.txt in the current directory? import java.io.*; public class Mine { public static void main(String argv[]){ Mine m=new Mine(); System.out.println(m.amethod()); } public int amethod() { try { FileInputStream dis=new FileInputStream("Hello.txt"); }catch (FileNotFoundException fne) { System.out.println("No such file found"); return -1; }catch(IOException ioe) { } finally{ System.out.println("Doing finally"); } return 0; } }

  1. No such file found

  2. No such file found ,-1

  3. No such file found, Doing finally, -1

  4. 0

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

When the file isn't found, FileNotFoundException is caught, 'No such file found' is printed, then -1 is returned. However, the finally block ALWAYS executes before the return, so 'Doing finally' is printed first. Output order: catch message → finally message → return value.