DRAFT
ConcreteClassOnlyImplementDirectAbstract
Misconception:
A concrete class that implements an interface and/or extends an abstract class only needs to implement those abstract methods explicitly declared in the interface it implements and/or the abstract class it extends.
Incorrect
A concrete class only needs to implement abstract methods declared in its direct supertypes
Correct
CorrectionHere is what's right.
Here is what's right.
It has to implement all abstract methods declared in any of its supertypes, even if they are declared in a supertype of a supertype (e.g., declared in an interface that is extended by the interface the concrete class implements).