• Domingo 22 de Diciembre de 2024, 23:11

Autor Tema:  Try......catch  (Leído 1839 veces)

arielb

  • Moderador
  • ******
  • Mensajes: 771
  • Nacionalidad: pa
    • Ver Perfil
    • http://coder-pa.blogspot.com
Try......catch
« en: Martes 20 de Junio de 2006, 15:41 »
0
k tal amigos, tengo una pregunta con respecto al uso del try. en java se puede atrapar especificamente la linea, el metodo, el tipo de error. para imprimir algo asi

Error:    erroratrapado
Linea:.   lineaatrapada
metodo: metodo donde sucedio el error

gracias de antemano
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16

http://coder-pa.blogspot.com

fcoavilez

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Try......catch
« Respuesta #1 en: Martes 20 de Junio de 2006, 16:36 »
0
la sintaxis del uso del try/catch es la siguiente:

try{
      lineas de codigo donde
      prevees que ocurra una o mas excepciones;
     }
     catch(excepcionAManejar variable){
        codigo que se ejecutara en caso de
        que se presente la excepcionAManejar
     }

inmediatamente del cierre de la llave del try deben if los catch
puedes poner mas de un catch consecutivo
al presentarse la excepcion no se interrumpe el flujo normal
del programa, pasa a el catch que corresponda y ejecuta el codigo que esta en ese bloque

para ver cuales excepciones puedes manejar y como se llaman consulta el api de java.

saludos, espero te sirva la informacion.

fcoavilez

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Try......catch
« Respuesta #2 en: Martes 20 de Junio de 2006, 16:37 »
0
ahhh se me olvidaba, la informacion que pretendes mostrar queda guardada en variable.



saludos.

Nagisa

  • Miembro MUY activo
  • ***
  • Mensajes: 119
  • Nacionalidad: es
    • Ver Perfil
Re: Try......catch
« Respuesta #3 en: Jueves 22 de Junio de 2006, 22:35 »
0
En Java las excepciones se modelan como diferentes clases, todas ellas derivadas de la clase Throwable. Esta clase tiene varios metodos que te permiten obtener la informacion que pretendes mostrar, como son getMessage() o getStackTrace().

El último te devuelve un array de StackTraceElement, que te da informacion sobre el estado de la pila en el momento que se produjo la excepcion. El primer elemento corresponde al elemento superior de la pila, y contiene el ultimo metodo que se llamo antes de que se produjera la excepcion.

Un esquema de codigo que puedes usar seria:

Código: Text
  1.  
  2. try{
  3.  // Algo que pueda petar
  4. } catch (Exception e){
  5.  system.out.println("Error: " + e.getMessage());
  6.  StackTraceElement[] ste = e.getStackTrace();
  7.  system.out.println("Linea: " + ste[0].getLineNumber());
  8.  system.out.println("Metodo: " + ste[0].getMethodName());
  9. }
  10.  
  11.  


Espero que te sea util. Saludos  :hola:
   

ing_marco

  • Miembro MUY activo
  • ***
  • Mensajes: 263
    • Ver Perfil
Re: Try......catch
« Respuesta #4 en: Viernes 23 de Junio de 2006, 01:09 »
0
Resumiendo las respuestas:
el Try catch te permite capturar excepciones y decirte cual fue la causa, pero no te dira de que metodo o en que linea puedes estar el error.
Utilizando StackTraceElement podras ver el estado final de la pila, eso te puede dar una ayuda pero de poca ayuda para lo que realmente necesitas.
pero tu segun parece tu deseas saber almenos donde ocurre el error, entonces tu podrias personalizar el mensaje.

Código: Text
  1.  
  2. Try
  3. {
  4.  
  5. }
  6. Catch(Exception e)
  7. {
  8. //aca pones elmensaje de deseas mostrar, diciendo en que metodo estas.
  9. }
  10.  
MARCO DIAZ
Ing_Marco
Bachiller Ing de Sistemas.
UNT
Trujillo-Peru