Two Valid Ways to Handle Checked Exceptions: Catch or Declare
Which TWO are valid ways to handle a checked exception in a method?
Quick Answer
The answer is two valid ways: catch the exception using a try-catch block, or declare the exception in the method's throws clause. This rule exists because checked exceptions—those that are subclasses of Exception but not RuntimeException—must be handled at compile time under Java's exception handling contract; the compiler will refuse to compile code that neither catches nor declares a checked exception. On the Oracle Java Foundations 1Z0-811 exam, this concept tests your understanding of the fundamental "catch or declare" principle, often appearing in questions that ask you to identify which code snippets will compile. A common trap is confusing unchecked exceptions (like NullPointerException) with checked ones, or thinking that simply printing a stack trace inside a catch block is enough—you must actually handle or rethrow the exception. Memory tip: think of the two Cs—Catch it or declare it in the Clause.
⚠ Common exam trap
Oracle often tests the misconception that converting a checked exception to a RuntimeException (option E) is a valid way to handle it within the method, but the conversion itself requires the original exception to be caught or declared, so it is not a standalone handling mechanism.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Catch the exception within the method
Catching a checked exception within the method using a try-catch block is a valid way to handle it. The Java compiler enforces that checked exceptions (subclasses of Exception but not RuntimeException) must be either caught or declared, so catching the exception satisfies the compiler's requirement.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Catch the exception within the method
Why this is correct
Catching is the primary way to handle.
- ✗
Ignore the exception by doing nothing
Why it's wrong here
Checked exceptions must be caught or declared.
- ✓
Declare the exception in the throws clause
Why this is correct
Declaring propagates the exception to the caller.
- ✗
Use assert to suppress the exception
Why it's wrong here
Assertions are not for exception handling.
- ✗
Convert it to a runtime exception by throwing a new RuntimeException
Why it's wrong here
Rethrowing as RuntimeException does not handle it; it still propagates.
Go deeper
Related to this question
About these practice questions
This 1Z0-811 question is part of Courseiva's 481-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
Same concept, more angles
1 more way this is tested on 1Z0-811
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. A method throws a checked exception. Which of the following is the correct way to handle it in the calling method?
medium- A.Ignore the exception since it is checked.
- B.Add a throws clause to the calling method.
- ✓ C.Enclose the call in a try-catch block.
- D.Use a finally block without catch.
Why C: Checked exceptions must be handled by the calling method either by catching them with a try-catch block or by declaring them in a throws clause. Since the question asks for the correct way to handle it, enclosing the call in a try-catch block is a valid and direct handling approach that prevents the exception from propagating unhandled.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This 1Z0-811 practice question is part of Courseiva's free Oracle certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 1Z0-811 exam.