final keyword in java

The final keyword in java is used to restrict the user. The final keyword can be used in many context. Final can be:
1. Vriable
2. Method
3. Class

If you make any variable as final, you cannot change the value of final variable(It will be constant).
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 Bike
{ 
	final int speedlimit=90;//final variable      
	void run()
	{    
		speedlimit=400;   
	}    
	public static void main(String args[])
	{
		Bike obj=new  Bike();   
		obj.run();   
	} 
} 

Output: Compile time error

Final Method:

If you make any method final you can not override it.

class Bike
{
	final void run()
	{
		System.out.println("running");
	} 
}     
class Honda extends Bike{ 
	void run()
	{
		System.out.println("running safely with 100kmph");
	}        
	public static void main(String args[])
	{    
		Honda honda= new Honda();
		honda.run();    
	} 
} 

Output: Compile time error

final class:

If you make any class final you can not extend it.

final class Bike
{
	// final class here
}    
class Honda extends Bike
{
	void run()
	{
		System.out.println("running safely with 100kmph");
	}
	public static void main(String args[])
	{
		Honda honda= new Honda();
		honda.run();
	} 
}  

Output: Compile time error

Q1. Is final method inherited?
Yes, final method is inherited but you cannot override it.

Q2. Can we declare constructor as final?
No, because construtor is never inherited.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Post Navigation