class NestTry { public static void main(String args[]) { try { int a = args.length; /* Si no hay ningún argumento en la línea, de órdenes, la siguiente sentencia generará una excepción de división por cero. */ int b = 42 / a; System.out.println("a = " + a); try { // bloque try anidado /* Si se utiliza un argumento en la línea, de órdenes, la siguiente sentencia generará una excepción de división por cero. */ if(a==1) a = a/(a-a); // división por cero /* Si se le pasan dos argumentos en la línea de órdenes, se genera una excepción al sobrepasar los límites del tamaño de la matriz. */ if(a==2) { int c[] = { 1 }; c[42] = 99; // genera una excepción de fuera de límites } } catch(ArrayIndexOutOfBoundsException e) { System.out.println("Indice fuera de limites: " + e); } } catch(ArithmeticException e) { System.out.println("Division por 0: " + e); } } }