¿Cómo funcionan los métodos sobrecargados?

public class Test1  {

    public static void main(String[] args)   {
        Test1 test1 = new Test1();
        test1.testMethod(null);
    }

    public void testMethod(String s){
        System.out.println("Inside String Method");     
    }

    public void testMethod(Object o){
        System.out.println("Inside Object Method"); 
    }
}

Cuando intento ejecutar el código dado, obtengo el siguiente resultado:

Método de cadena interior

¿Alguien puede explicar por qué el método con elString tipo de parámetro se está llamando?

Respuestas a la pregunta(2)

Su respuesta a la pregunta