Ключевое слово "final" используется в объявлении метода, чтобы указать, что метод не может быть переопределен подклассами.
В дополнение к этому у него есть некоторые преимущества в производительности:
"окончательные методы могут быть встроены после загрузки в JVM, потому что в этот момент JVM точно знает, что метод является окончательным, поэтому компиляторы, которые работают после загрузки классов, такие как JIT-компиляторы, могут использовать преимущества конечных методов. Следовательно, объявленные методыfinal может иметь некоторое преимущество в производительности. "
Однако, несмотря на преимущества в производительности, наиболее важной целью использования является" четкий дизайн ".Он используется в HashMap для указания того, что эти методы не будут переопределены подклассами, поскольку их реализация гарантируется таким образом