Aha it is very simple problem. For the exam,
you should keep in mind that the if expression will not evaluate by the the compiler, for the purpose of finding unreachable statements.
For an example:
This is ok, because the compiler don't evaluate the if condition, so it don't know whether the exception will throw or not.
Warning: But you should note that if expression will be evaluate, for the purpose of checking for local variable initialization. For an example:
int x;
if(true) x=1;
System.out.println(x);
The above code compiles, but the code below will not:
int x;
if(false) x=1;
System.out.println(x);
Keep in mind the above two concepts for the exam. I remembered that I got a question on the exam, that uses the if(true) to check unreachable statements.