Difference between method overriding and overloading

Overriding is the concept of having functions of same name and signature in different classes. one in the super class can be made virtual and other can override the functionality of virtual one and it is runtime polymorphism.

Overloading is the concept of having functions of same name, but different signature in same class. They are differentiated by the compiler by their signatures and it is is designtime polymorphism