Basic Concepts of OOP
* The dynamic binding mechanism determines the type of the object and maps the
invocation to the correct method in class X, if the object is of class X, or to the
correct method in class Y, if the object is of class Y (e.g., the function F() could be a print() function, and the algorithm is unaware of the exact type of object to be printed, it invokes the function using a base class of classes X and Y).