What is the difference between overloading and overriding methods in object?
Here are some of the most common differences between both of
them. If you are working in Java for more than 1 year, you might be
familiar with all of them but any way its good revision:
1) First and major difference between Overloading and Overriding
is that former occur during compile time while later occur during
runtime.
2) Second difference between Overloading and Overriding is that,
you can overload method in same class but you can only override
method in sub class.
3) Third difference is that you can overload static method in
Java but you can not override static method in Java. In fact when
you declare same method in Sub Class it's known as method hiding
because it hide super class method instead of overriding it.
4) Overloaded methods are bonded using static binding and Type
of reference variable is used, while Overridden method are bonded
using dynamic bonding based upon actual Object.
5) Rules of Overloading and Overriding is different in Java. In
order to overload a method you need to change its method signature
but that is not required for overriding any method in Java.