Open In App

Unreachable Code Error in Java

Last Updated : 22 Oct, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

The Unreachable statements refers to statements that won’t get executed during the execution of the program are called Unreachable Statements. These statements might be unreachable because of the following reasons:

  • Have a return statement before them 
  • Have an infinite loop before them 
  • Any statements after throwing exception in a try block 

Scenarios where this error can occur: 

  • Have a return statement before them: When a return statement gets executed, then that function execution gets stopped right there. Therefore any statement after that wont get executed. This results in unreachable code error.

Example: 

Java




class GFG {
    public static void main(String args[])
    {
 
        System.out.println("I will get printed");
 
        return;
 
        // it will never run and gives error
        // as unreachable code.
        System.out.println("I want to get printed");
    }
}


  • Compile Errors: 

prog.java:11: error: unreachable statement 
System.out.println(“I want to get printed”); 

1 error 

  • Have an infinite loop before them: Suppose inside “if” statement if you write statements after break statement, then the statements which are written below “break” keyword will never execute because if the condition is false, then the loop will never execute. And if the condition is true, then due to “break” it will never execute, since “break” takes the flow of execution outside the “if” statement.

Example: 

Java




class GFG {
    public static void main(String args[])
    {
        int a = 2;
        for (;;) {
 
            if (a == 2)
            {
                break;
                // it will never execute, so
                // same error will be there.
                System.out.println("I want to get printed");
            }
        }
    }
}


  1. Compile Errors: 

prog.java:13: error: unreachable statement 
System.out.println(“I want to get printed”); 

1 error 
 

  • Any statement after throwing an exception: If we add any statements in a try-catch block after throwing an exception, those statements are unreachable because there is an exceptional event and execution jumps to catch block or finally block. The lines immediately after the throw is not executed.

Example: 

Java




class GFG {
    public static void main(String args[])
    {
 
        try {
            throw new Exception("Custom Exception");
            // Unreachable code
            System.out.println("Hello");
        }
        catch (Exception exception) {
            exception.printStackTrace();
        }
    }
}


  • Compile Errors: 

prog.java:7: error: unreachable statement 
System.out.println(“Hello”); 

1 error 
 

  • Any statement after writing continue : If we add any statements in a loop after writing the continue keyword, those statements are unreachable because execution jumps to the top of the for loop. The lines immediately after the continue is not executed.
    Example: 
     

Java




class GFG {
    public static void main(String args[])
    {
        for (int i = 0; i < 5; i++)
        {
            continue;
            System.out.println("Hello");
        }
    }
}


  • Compile Errors: 

prog.java:6: error: unreachable statement 
System.out.println(“Hello”); 

1 error 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads