In Java we see lots of places where the final
keyword can be used but its use is uncommon.
For example:
String str = "abc";
System.out.println(str);
In the above case, str
can be final
but this is commonly left off.
When a method is never going to be overridden we can use final keyword. Similarly in case of a class which is not going to be inherited.
Does the use of final keyword in any or all of these cases really improve performance? If so, then how? Please explain. If the proper use of final
really matters for performance, what habits should a Java programmer develop to make best use of the keyword?