The only requirement for overloading
is that each version of the method takes a different set of
parameters as arguments (sometimes, we say that it has a
"different signature") such as in the following example:
int add(int a, int b)
{
return (a+b);
}
double add(double a, double b)
{
return (a+b);
}
float add(float a, float b)
{
return (a+b);
}