Which statement is true?
-
catch(X x) can catch subclasses of X where X is a subclass of Exception.
-
The Error class is a RuntimeException.
-
Any statement that can throw an Error must be enclosed in a try block.
-
Any statement that can throw an Exception must be enclosed in a try block.
Reveal answer
Fill a bubble to check yourself
A
Correct answer
Explanation
Option A is correct. If the class specified in the catch clause does have subclasses, any exception object that subclasses the specified class will be caught as well. Option B is wrong. The error class is a subclass of Throwable and not RuntimeException. Option C is wrong. You do not catch this class of error. Option D is wrong. An exception can be thrown to the next method higher up the call stack.