Sunteți pe pagina 1din 5

9/10/2015

finalkeywordinJavajavatpoint

FinalKeywordInJava
Thefinalkeywordinjavaisusedtorestricttheuser.Thejavafinalkeywordcanbeusedin
manycontext.Finalcanbe:
1. variable
2. method
3. class
Thefinalkeywordcanbeappliedwiththevariables,afinalvariablethathavenovalueitis
calledblankfinalvariableoruninitializedfinalvariable.Itcanbeinitializedintheconstructor
only.Theblankfinalvariablecanbestaticalsowhichwillbeinitializedinthestaticblockonly.
Wewillhavedetailedlearningofthese.Let'sfirstlearnthebasicsoffinalkeyword.

1)Javafinalvariable
Ifyoumakeanyvariableasfinal,you
cannotchangethevalueoffinal
variable(Itwillbeconstant).

Exampleoffinalvariable
Thereisafinalvariablespeedlimit,we
aregoingtochangethevalueofthis
variable,butItcan'tbechangedbecause
finalvariableonceassignedavaluecan
neverbechanged.
.

classBike9{

finalintspeedlimit=90//finalvariable

voidrun(){

speedlimit=400

publicstaticvoidmain(Stringargs[]){

Bike9obj=newBike9()

obj.run()

}//endofclass
TestitNow
Output:CompileTimeError

2)Javafinalmethod

data:text/htmlcharset=utf8,%3Ch1%20class%3D%22h1%22%20style%3D%22margintop%3A%205px%3B%20fontfamily%3A%20erdana%2C%20helv

1/5

9/10/2015

finalkeywordinJavajavatpoint

2)Javafinalmethod
Ifyoumakeanymethodasfinal,youcannotoverrideit.

Exampleoffinalmethod
.

classBike{

finalvoidrun(){System.out.println("running")}

classHondaextendsBike{

voidrun()
{System.out.println("runningsafelywith100kmph")}

publicstaticvoidmain(Stringargs[]){

Hondahonda=newHonda()

honda.run()

}
TestitNow
Output:CompileTimeError

3)Javafinalclass
Ifyoumakeanyclassasfinal,youcannotextendit.

Exampleoffinalclass
.

finalclassBike{}

classHonda1extendsBike{

voidrun()
{System.out.println("runningsafelywith100kmph")}

publicstaticvoidmain(Stringargs[]){

Honda1honda=newHonda()

honda.run()

}
TestitNow

data:text/htmlcharset=utf8,%3Ch1%20class%3D%22h1%22%20style%3D%22margintop%3A%205px%3B%20fontfamily%3A%20erdana%2C%20helv

2/5

9/10/2015

finalkeywordinJavajavatpoint

Output:CompileTimeError

Q)Isfinalmethodinherited?
Ans)Yes,finalmethodisinheritedbutyoucannotoverrideit.ForExample:
.

classBike{

finalvoidrun(){System.out.println("running...")}

classHonda2extendsBike{

publicstaticvoidmain(Stringargs[]){

newHonda2().run()

}
TestitNow
Output:running...

Q)Whatisblankoruninitializedfinalvariable?
Afinalvariablethatisnotinitializedatthetimeofdeclarationisknownasblankfinalvariable.
Ifyouwanttocreateavariablethatisinitializedatthetimeofcreatingobjectandonce
initializedmaynotbechanged,itisuseful.ForexamplePANCARDnumberofanemployee.
Itcanbeinitializedonlyinconstructor.

Exampleofblankfinalvariable
.

classStudent{

intid

Stringname

finalStringPAN_CARD_NUMBER

...

Que)Canweinitializeblankfinalvariable?
Yes,butonlyinconstructor.Forexample:

data:text/htmlcharset=utf8,%3Ch1%20class%3D%22h1%22%20style%3D%22margintop%3A%205px%3B%20fontfamily%3A%20erdana%2C%20helv

3/5

9/10/2015

finalkeywordinJavajavatpoint

classBike10{

finalintspeedlimit//blankfinalvariable

Bike10(){

speedlimit=70

System.out.println(speedlimit)

publicstaticvoidmain(Stringargs[]){

newBike10()

}
TestitNow
Output:70

staticblankfinalvariable
Astaticfinalvariablethatisnotinitializedatthetimeofdeclarationisknownasstaticblank
finalvariable.Itcanbeinitializedonlyinstaticblock.

Exampleofstaticblankfinalvariable
.

classA{

staticfinalintdata//staticblankfinalvariable

static{data=50}

publicstaticvoidmain(Stringargs[]){

System.out.println(A.data)

Q)Whatisfinalparameter?
Ifyoudeclareanyparameterasfinal,youcannotchangethevalueofit.
.

classBike11{

intcube(finalintn){

n=n+2//can'tbechangedasnisfinal

n*n*n

publicstaticvoidmain(Stringargs[]){

data:text/htmlcharset=utf8,%3Ch1%20class%3D%22h1%22%20style%3D%22margintop%3A%205px%3B%20fontfamily%3A%20erdana%2C%20helv

4/5

9/10/2015

finalkeywordinJavajavatpoint

Bike11b=newBike11()

b.cube(5)

}
TestitNow
Output:CompileTimeError

Q)Canwedeclareaconstructorfinal?
No,becauseconstructorisneverinherited.

data:text/htmlcharset=utf8,%3Ch1%20class%3D%22h1%22%20style%3D%22margintop%3A%205px%3B%20fontfamily%3A%20erdana%2C%20helv

5/5

S-ar putea să vă placă și