final local variable in Java

Local Variable

  • Local variables are declared in methods, constructors, or blocks.

  • Local variables are created when the method, constructor or block is entered and the variable will be destroyed once it exits the method, constructor, or block.

  • Access modifiers cannot be used for local variables.

  • Local variables are visible only within the declared method, constructor, or block.

  • Local variables are implemented at stack level internally.

  • There is no default value for local variables, so local variables should be declared and an initial value should be assigned before the first use.

final Local Variable

  • final is the only allowed access modifier for local variables.

  • final local variable is not required to be initialized during declaration.

  • final local variable allows compiler to generate an optimized code.

  • final local variable can be used by anonymous inner class or in anonymous methods.


abstract class AnonymousInner {
   public abstract void display();

public class Tester {
   public static void main(String args[]) {

      final int value;
      value = 100;
      AnonymousInner inner = new AnonymousInner() {
         public void display() {
            System.out.println("Accessing value: " + value);


Accessing value: 100

Updated on: 21-Jun-2020

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started