-
inheritance and its implications in OOP
-
overriding and hiding of superclass members
-
method overriding vs. method overloading
-
usage of super reference to access superclass members
-
usage of this() and super() calls, including constructor chaining
-
interfaces and multiple interface inheritance
-
subtype- supertype relationship
-
conversions due to assigning, casting, and passing reference values
-
identifying the type of objects using the instanceof operator
-
polymorphism and dynamic method lookup
-
inheritance ( is-a ) vs. aggregation ( has-a )