File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Method variable should always be marked 'final'

 
Saurabh Pillai
Ranch Hand
Posts: 524
  • 0
  • 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: 4846
34
Chrome Netbeans IDE Windows
  • 0
  • 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
  • 0
  • 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: 47300
52
  • 0
  • 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.
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic