Win a copy of The Java Performance Companion this week in the Performance forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Method variable should always be marked 'final'

 
Saurabh Pillai
Ranch Hand
Posts: 524
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What do you guys say?

If you need to do any operation on it create local variable and assign the parameter to local variable.

For example,



 
Stephan van Hulst
Bartender
Pie
Posts: 5912
66
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Seems pretty useless. A method parameter is equivalent to a local variable. If you want to change it, just change it.

I know that you can have at least NetBeans warn about assigning values to a method parameter. Supposedly because it may lead to confusing code. I don't really buy that myself.
 
Jim Pouwels
Ranch Hand
Posts: 61
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Stephan van Hulst wrote:Seems pretty useless. A method parameter is equivalent to a local variable. If you want to change it, just change it.

I know that you can have at least NetBeans warn about assigning values to a method parameter. Supposedly because it may lead to confusing code. I don't really buy that myself.


I think that it has something to do with coding conventions.
 
Campbell Ritchie
Sheriff
Pie
Posts: 49466
64
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You only “need” to mark local variables or parameters final when they are used inside an anonymous or local class.
It is probably a good code convention to mark them final to remind yourself they are not changed, but, Stephan is right; you can change local variables if you wish. Changing parameters might cause confusion, but that does not merit a rule.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic