
Hi Chris,
As far as I'm aware, declaring a method final doesn't make a whole lot of difference to hotspot these days. Hotspot can still inline a method if it's not declared final but determines at runtime it's not overriden elsewhere. If some new code eventually turns up that does override the method, hotspot will 'uninline' the method dynamically.
http://www.java2s.com/Article/Java/JVM/The_Java_HotSpot_Performance_Engine_M...
The only real reason that I'm aware of for declaring a method final is to deliberately prevent it from being overridden as a design decision.
That's very interesting, I didn't know that the Java runtime was as sophisticated as that. So, indeed the final was not actually doing anything useful apart from expressing my intention. No doubt, that's why Steve removed it. Cheers, Mark