I was reading the book "Programmer's guide to
Java Certfication" by Mr Mughal.. 2nd edition. In the chapter about object oriented programming section 6.2 p235 talking about final methods,
A final method cannot be overridden because the modifier final prevents method overriding. An attempt to override a final method will result in a compile-time error. However, an abstract method requires the non-abstract subclasses to override the method, in order to provide an implementation.
Hmm.. i thought about the last sentence. What i understood is that you can over ride an abstract "final" method in order to provide an implementation.
which prompted to define a final method in an abstract class. But it would not compile.
Was that a mis-understanding on my part?