What exactly is the purpose of having private access modifier for the methods in Java if they are prohibited for the modification by the final modifier as well?
And The Java Language Specification explicitly notes that:
A method can be declared final to prevent subclasses from overriding or hiding it.
Then why not to simply mark a method as final?