The final keyword in Java can be applied to variables, methods, and classes. It restricts modification of final variables, prevents overriding of final methods, and disallows extension of final classes. Final variables must be initialized either immediately or in a constructor; static final variables can only be initialized in a static block. Final parameters cannot be reassigned within methods. Constructors cannot be declared as final since they are never inherited.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
55 views
Final Key Word
The final keyword in Java can be applied to variables, methods, and classes. It restricts modification of final variables, prevents overriding of final methods, and disallows extension of final classes. Final variables must be initialized either immediately or in a constructor; static final variables can only be initialized in a static block. Final parameters cannot be reassigned within methods. Constructors cannot be declared as final since they are never inherited.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 20
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. The blank final variable can be static also which will be initialized in the static block only.
• Let's first learn the basics of final keyword.
Java final variable
• 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=40 • 0; • } • public static void main(String args[]){ • Bike9 obj=new Bike9(); • obj.run(); • } }//end of class Java final method • If you make any method as final, you cannot override it. class Bike{ final void run(){System.out.println("running"); } } class Honda extends Bike{ void run() {System.out.println("running safely with 100km ph");} public static void main(String args[]){ Honda honda= new Honda(); honda.run(); } } Java final class • If you make any class as final, you cannot extend it. final class Bike{}
class Honda1 extends Bike
{ void run() {System.out.println("running safely with 100kmph") ; } public static void main(String args[]){ Honda1 honda= new Honda(); honda.run(); } } Is final method inherited? • Yes, final method is inherited but you cannot override it. • class Bike •{ • final void run() {System.out.println("running...");} •} •• class Honda2 public staticextends Bike{ void main(String args[]){ • new Honda2().run(); • } •} What is blank or uninitialized final variable? • A final variable that is not initialized at the time of declaration is known as blank final variable. • If you want to create a variable that is initialized at the time of creating object and once initialized may not be changed, it is useful. For example PAN CARD number of an employee. • It can be initialized only in constructor. Can we initialize blank final variable? • Yes, but only in constructor. • class Bike10{ • final int speedlimit;//blank final variable • • Bike10() • { speedlimit=7 • 0; • System.out.pri • ntln(speedlimi • t); public static void main(String args[]){ • } new Bike10(); • } •} 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); } } What is final parameter? • If you declare any parameter as final, you cannot change the value of it. • class Bike11{ • int cube(final int n) •{ • n=n+2;//can't be changed as n is final • n*n*n; • } • public static void main(String args[]){ • Bike11 b=new Bike11(); • b.cube(5); • } } Can we declare a constructor final? • No, because constructor is never inherited.