In Java, you identify methods by name AND signature meaning order, count and types of method parameters. That is what the second argument stand for.
Method overloading means you have at least two (or more) methods with same name, but different signatures. Using Java reflection code, you have to specify the types of parameters. This is done via varargs-argument, for example:
Method m = getMethod("xyz", Integer.class, String.class);
refers to:
{modifiers} {return type} xyz(Integer arg1, String arg2);