2
respuestas

clase exepcions

public class Flujo {

 public static void main(String[] args) {
        System.out.println("Inicio main");
        metodo1();
        System.out.println("Fin main");
      }
      private static void metodo1(){
        System.out.println("Inicio metodo1");
        metodo2();
        System.out.println("Fin metodo1");
      }
      private static void metodo2(){
        System.out.println("Inicio metodo2");
        for(int i =1; i<= 5; i++){
          System.out.println(i);
          
          try {
        	  
        	  if (i == 3) {
        		  int num = 0;
                  int resultado = i/num;
                  System.out.println(resultado);   
        	  }
        	   
              String test = null;
        	  System.out.println(test.toString());
          }	catch(NullPointerException | ArithmeticException exception) {
        	  System.out.println("Atrapo Excepcion");
        	  System.out.println(exception.getMessage());
        	  exception.printStackTrace(); 
          } 
          
          } 
          
       
        }
     **   System.out.println("Fin metodo2");**
      }

no se por que el codigo me lanza error si he hecho exactamente lo que esta haciendo el maestro. he subrayado el error en el codigo ** System.out.println("Fin metodo2");** aqui es donde me lanza el error. he intentado pero no he podido hacer nada.

Exception in thread "main" java.lang.Error: Unresolved compilation problem:

at Flujo.main(Flujo.java:4)

finalmente, esto es lo que me dice

2 respuestas

Hola Moralens, como estas? He probado tu código y vi que el ultimo System.out.println que señalas esta por fuera del metodo2, por eso no compila. Te paso el codigo corregido para que pruebes:

public class Flujo {

public static void main(String[] args) {
    System.out.println("Inicio main");
    metodo1();
    System.out.println("Fin main");
}

private static void metodo1() {
    System.out.println("Inicio metodo1");
    metodo2();
    System.out.println("Fin metodo1");
}

private static void metodo2() {
    System.out.println("Inicio metodo2");
    for (int i = 1; i <= 5; i++) {
        System.out.println(i);

        try {

            if (i == 3) {
                int num = 0;
                int resultado = i / num;
                System.out.println(resultado);
            }

            String test = null;
            System.out.println(test.toString());
        } catch (NullPointerException | ArithmeticException exception) {
            System.out.println("Atrapo Excepcion");
            System.out.println(exception.getMessage());
            exception.printStackTrace();
        }

    }

    System.out.println("Fin metodo2"); 
}

}

Cualquier cosa no dudes en volver a consultar. Saludos y a seguir estudiando.

Si este post te ayudó, por favor, marca como solucionado ✓.

muchas gracias oscar