Overloading happens when you have two methods with the same name but different signatures (or arguments) . In a class we can implement two or more methods with the same name. Overloaded methods are differentiated based on the number and type of parameter passed as arguments to the methods.