posted 1 year ago
Lat's see what the Java® Language Specification (=JLS) says. Beware: the JLS can be difficult to read. Wind up a bit and we see:-
You can't call it private because that means it cannot exist in a subclass. You cannot call it static because it is supposed to be overridden as an instance method, so it can't be static. You can't say final because that prevents overriding. You can't say native strictfp or synchronized because that implies the method has already been implemented.It is a compile-time error if a method declaration that contains the keyword abstract also contains any one of the keywords private, static, final, native, strictfp, or synchronized.