Overloading | Overriding |
Overloading is also called static/early binding polymorphism. | Overriding is also called dynamic/late binding polymorphism. |
It happens at compile time. | It happens at runtime. |
It adds or extend more to the method functionality. | It changes the existing functionality of the method. |
Methods have different parameter lists or type or the return type. | Methods have the same signature as the parent class method. |
Static binding happens in overloading. | Dynamic binding happens in overriding. |