SOLUCIONADO!!
Gracias Nagisa
Al final lo que he hecho es hacer la transformación a entero de los argumentos antes de la llamada a los métodos que pintan y lo he incluido todo en el bloque try. queda asi:
public class Lanzadera{
public static void main(String args[]){
Tablero unTablero;
Caballo unCaballo;
String respuesta;
if(args.length!=2) {
System.out.println("Ús: Lanzadera x y");
return;
}
else {
respuesta="";
try{
int x,y;
x=Integer.parseInt(args[0]);
y=Integer.parseInt(args[1]);
unTablero=new Tablero();
unCaballo=new Caballo(x,y);
unCaballo.pinta(unTablero);
unCaballo.marcaSaltos(unTabler o);
unTablero.pintaCeldas();
}catch(NumberFormatException ex){
respuesta="Se han introducido caracteres no numéricos";
}catch (IndexOutOfBoundsException ex) {
respuesta="Els números han d.estar entre 1 i 8";
}
finally {....