Unreachable Code Error in Java

22 Oct, 2020
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");            }        }    }}
Compile Errors: 
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 
smithasm7
spamerzinc
java-basics
Java-Control-Flow
Java
Programming Language
Java-Control-Flow
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Object Oriented Programming (OOPs) Concept in Java
How to iterate any Map in Java
Interfaces in Java
HashMap in Java with Examples
Stream In Java
Differences between Procedural and Object Oriented Programming
Arrow operator -> in C/C++ with Examples
Modulo Operator (%) in C/C++ with Examples
Structures in C++
Decorators with parameters in Python