Method overloading occurs when a class contains two methods with the same name, but different signatures.