Final Keyword In Java

The final keyword in java is used to restrict the user. The java final keyword can be used in many context. Final can be

  • variable
  • method
  • class

The final keyword can be applied with the variables, a final variable that have no value it is called blank final variable or uninitialized final variable. It can be initialized in the constructor only

If you make any variable as final, you cannot change the value of final variable(It will be constant)

Example of final variable

There is a final variable speedlimit, we are going to change the value of this variable, but It can’t be changed because final variable once assigned a value can never be changed

class Bike9{ 

final int speedlimit=90;//final variable 
 void run(){ 
 speedlimit=400; 
 } 
 public static void main(String args[]){ 
 Bike9 obj=new Bike9(); 
 obj.run(); 
 } 
}

Output

Compile Time Error

Is final method inherited ?

class Bike{ 
 final void run(){System.out.println("running...");} 
 } 
 class Honda2 extends Bike{ 
 public static void main(String args[]){ 
 new Honda2().run(); 
 } 
 } 

Output:running…

Can we initialize blank final variable ?

Yes, but only in constructor

Example

class Bike10{ 
final int speedlimit;//blank final variable 
Bike10(){ 
speedlimit=70; 
System.out.println(speedlimit); 
} 
 public static void main(String args[]){ 
new Bike10(); 
} 
}

Output:70

static blank final variable

A static final variable that is not initialized at the time of declaration is known as static blank final variable. It can be initialized only in static block

class A{ 
static final int data;//static blank final variable 
static{ data=50;} 
 public static void main(String args[]){ 
System.out.println(A.data); 
 } 
}

Can we declare a constructor final ?

No, because constructor is never inherited

Leave a Comment