Bird
Raised Fist0
Javaprogramming~5 mins

Try–catch block in Java - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is the purpose of a try–catch block in Java?
A try–catch block is used to handle exceptions (errors) that may occur during program execution, allowing the program to continue running instead of crashing.
Click to reveal answer
beginner
What happens inside the try block?
The try block contains code that might throw an exception. Java runs this code and if an exception occurs, it jumps to the matching catch block.
Click to reveal answer
beginner
What is the role of the catch block?
The catch block catches and handles the exception thrown in the try block. It lets you define what to do when an error happens.
Click to reveal answer
intermediate
Can you have multiple catch blocks after one try block? Why?
Yes, you can have multiple catch blocks to handle different types of exceptions separately, making error handling more specific and clear.
Click to reveal answer
intermediate
What is the purpose of the finally block in try–catch?
The finally block contains code that always runs after the try and catch blocks, whether an exception occurred or not. It's used for cleanup like closing files.
Click to reveal answer
What keyword starts the block where you write code that might cause an exception?
Atry
Bcatch
Cthrow
Dfinally
Which block handles the exception thrown in the try block?
Atry
Bthrow
Cfinally
Dcatch
What happens if an exception is not caught in a try–catch block?
AProgram continues normally
BProgram crashes or stops
CException is ignored
DException is logged automatically
Which block always executes after try and catch, regardless of exceptions?
Afinally
Bcatch
Ctry
Dthrow
Can you have multiple catch blocks for one try block?
ANo, only one catch block is allowed
BYes, but only if exceptions are the same type
CYes, to handle different exception types
DNo, catch blocks are optional
Explain how a try–catch block works in Java and why it is useful.
Think about what happens when an error occurs in your code.
You got /4 concepts.
    Describe the purpose of the finally block and give an example of when you might use it.
    Consider what you want to happen no matter what, even if an error occurs.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of a try-catch block in Java?
      easy
      A. To create new classes
      B. To handle errors and prevent program crashes
      C. To declare variables
      D. To repeat code multiple times

      Solution

      1. Step 1: Understand the role of try block

        The try block contains code that might cause an error during execution.
      2. Step 2: Understand the role of catch block

        The catch block runs only if an error occurs, allowing the program to handle it gracefully.
      3. Final Answer:

        To handle errors and prevent program crashes -> Option B
      4. Quick Check:

        try-catch handles errors = D [OK]
      Hint: Try-catch is for error handling, not loops or declarations [OK]
      Common Mistakes:
      • Confusing try-catch with loops
      • Thinking try-catch declares variables
      • Assuming try-catch creates classes
      2. Which of the following is the correct syntax to catch an exception in Java?
      easy
      A. try { /* code */ } catch (e) { /* handle */ }
      B. try { /* code */ } catch Exception e { /* handle */ }
      C. try { /* code */ } catch { /* handle */ }
      D. try { /* code */ } catch (Exception e) { /* handle */ }

      Solution

      1. Step 1: Check catch syntax

        The catch block must specify the exception type in parentheses, like catch (Exception e).
      2. Step 2: Identify correct option

        try { /* code */ } catch (Exception e) { /* handle */ } correctly uses parentheses and exception type; others miss parentheses or type.
      3. Final Answer:

        try { /* code */ } catch (Exception e) { /* handle */ } -> Option D
      4. Quick Check:

        Correct catch syntax = A [OK]
      Hint: Catch must have parentheses with exception type [OK]
      Common Mistakes:
      • Omitting parentheses in catch
      • Not specifying exception type
      • Using wrong catch syntax
      3. What will be the output of this code?
      try {
        int a = 5 / 0;
        System.out.println("Result: " + a);
      } catch (ArithmeticException e) {
        System.out.println("Error caught");
      }
      medium
      A. Error caught
      B. Result: 0
      C. 5
      D. Compilation error

      Solution

      1. Step 1: Identify the error in try block

        Dividing by zero causes an ArithmeticException at runtime.
      2. Step 2: Check catch block response

        The catch block catches ArithmeticException and prints "Error caught".
      3. Final Answer:

        Error caught -> Option A
      4. Quick Check:

        Division by zero triggers catch = A [OK]
      Hint: Division by zero triggers catch block output [OK]
      Common Mistakes:
      • Expecting normal output despite error
      • Thinking code crashes without catch
      • Confusing compile-time and runtime errors
      4. Find the error in this code snippet:
      try {
        int[] arr = new int[3];
        arr[5] = 10;
      } catch (ArrayIndexOutOfBoundsException e) {
        System.out.println("Index error");
      }
      medium
      A. Array size is too small
      B. No error, code runs fine
      C. Catch block syntax is wrong
      D. Exception type is incorrect

      Solution

      1. Step 1: Analyze array usage

        Array declared with size 3, valid indices are 0,1,2; index 5 is out of bounds.
      2. Step 2: Understand exception thrown

        Accessing index 5 causes ArrayIndexOutOfBoundsException, which is correctly caught.
      3. Final Answer:

        Array size is too small -> Option A
      4. Quick Check:

        Index 5 invalid for size 3 = C [OK]
      Hint: Check array size vs accessed index to find error [OK]
      Common Mistakes:
      • Thinking catch syntax is wrong
      • Assuming no error occurs
      • Confusing exception types
      5. You want to read an integer from user input safely. Which code correctly uses try-catch to handle invalid input?
      import java.util.Scanner;
      
      Scanner sc = new Scanner(System.in);
      int num;
      try {
        num = sc.nextInt();
        System.out.println("You entered: " + num);
      } catch (Exception e) {
        System.out.println("Invalid input");
      }
      hard
      A. Missing finally block causes error
      B. Should catch IOException instead of Exception
      C. Correctly handles invalid input with try-catch
      D. Try block should be outside Scanner usage

      Solution

      1. Step 1: Understand input reading

        Using sc.nextInt() reads integer input; invalid input throws InputMismatchException, a subclass of Exception.
      2. Step 2: Check try-catch usage

        The try block attempts input; catch block handles any Exception, printing "Invalid input" if input is wrong.
      3. Final Answer:

        Correctly handles invalid input with try-catch -> Option C
      4. Quick Check:

        Try-catch handles input errors = B [OK]
      Hint: Catch Exception to handle all input errors safely [OK]
      Common Mistakes:
      • Thinking finally is mandatory
      • Catching wrong exception type
      • Placing try block incorrectly