Ninguno. Obtendrá un error de compilación que le pedirá que aclare a qué método desea llamar. Puede hacerlo mediante la fundición de forma explícita el primer argumento:
showInputDialog((Object) null, "Write something");
o
showInputDialog((Component) null, "Write something");
actualización Debería haber sabido - Nunca dudar de Jon Skeet. El problema al que me he referido anteriormente solo ocurre cuando es imposible determinar qué método es más específico. Aquí hay un caso de prueba:
public class Test {
public void doSomething(String arg1, Object arg2) {
System.out.println("String, Object");
}
public void doSomething(Object arg1, String arg2) {
System.out.println("Object, String");
}
public static void main(String[] args) {
Test test = new Test();
test.doSomething(null, null);
}
}
Lo anterior dará un error de compilación.
que en realidad es una buena pregunta, incluso si se las ingenió (que no se desea llamar a la primera, ya que es idéntica a 'JOptionPane.showInputDialog ("Escribir algo"); ' – Powerlord