Method Overloading or Static Polymorphism
Method overloading
means having two or more methods with the same name but with different
signatures
Method Overriding or Dynamic Polymorphism
Method overriding
means having two or more methods with the same name , same signature but with
different implementation. (Base class and Child class implementation of a
method with same name and signature)