Declaring a method as final there are two reasons:
The first is that you already know that the functionality provided by this method already satisfies your requirements, does not need to be extended, and does not allow any class that inherits from this class to overwrite this method,
However, inheritance can still inherit this method, which means it can be used directly.
The second is to allow the compiler to convert all calls to this method into an inline call mechanism, which will allow you to insert the method body directly into the call when the final method is called.
Instead of making routine method calls, such as saving breakpoints, pressing stacks, and so on, this may make your program more efficient,
However, when your method body is very large, or you call this method in many places, then your calling body code will quickly expand, it may affect efficiency, so you should be careful to use final method definition.
done!
The final method in Java