Foros del Web » Programación para mayores de 30 ;) » Java »

Código de excepciones

Estas en el tema de Código de excepciones en el foro de Java en Foros del Web. Hola, No entiendo bien este código: Código: public class Main { Scanner scan = new Scanner(System.in); public void esNumero() throws Exception{ String cadenaUsuario = scan.nextLine(); ...
  #1 (permalink)  
Antiguo 04/11/2011, 03:25
 
Fecha de Ingreso: octubre-2008
Mensajes: 276
Antigüedad: 16 años, 2 meses
Puntos: 1
Código de excepciones

Hola,

No entiendo bien este código:

Código:
public class Main {
	Scanner scan = new Scanner(System.in);
	public void esNumero() throws Exception{
		String cadenaUsuario = scan.nextLine();
		Integer numeroUsuario = new Integer(cadenaUsuario);
	}
	public static void main ( String[] args){
		Main relanzarExcepcion = new Main();
		try {
			relanzarExcepcion.esNumero();
		} catch(NumberFormatException e) {
			System.out.println("No es un numero " + e.getMessage());
		} catch(Exception e) {
			System.out.println("Error " + e.getMessage());
		}
	}
}
Lo estoy probando pero sólo se ejecuta un "catch", el de "No es un numero ". ¿Para qué sirve el otro?

Saludos.
__________________
Uso Apache 2.2 con PHP 5.5.9 y MySQL 5.1
Uso Eclipse IDE for Java Developers, Version: Mars.1 Release (4.5.1), Build id: 20150924-1200 para programar en Java bajo Windows
  #2 (permalink)  
Antiguo 04/11/2011, 10:12
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 10 meses
Puntos: 78
Respuesta: Código de excepciones

Hola letni,
el catch NumberFormatException salta cuando hay una exepción de ese mismo tipo, el catch de Exception saltará con cualquier tipo de Excepcion. Podriamos decir que es genérica.

La primera está controlada para ese tipo de error, pero si hay cualquier otro tipo de error, sea el que sea, lo recogerá Exception.

Puedes quitar el NumberFormatException y verás como Exception recogerá el NumberFormatException.

Un saludo!
  #3 (permalink)  
Antiguo 04/11/2011, 14:25
 
Fecha de Ingreso: octubre-2008
Mensajes: 276
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: Código de excepciones

Gracias por la respuesta, tengo más dudas que preguntaré más tarde.

Saludos.
__________________
Uso Apache 2.2 con PHP 5.5.9 y MySQL 5.1
Uso Eclipse IDE for Java Developers, Version: Mars.1 Release (4.5.1), Build id: 20150924-1200 para programar en Java bajo Windows

Etiquetas: excepciones, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:03.