Sunteți pe pagina 1din 2

EJEMPLO DE EXCEPCIONES public class EjemploExcepciones { public static void main(String args[]) { double nota1=15; double nota2=25; double

nota3=35; double prom; try { prom=calculaPromedio(nota1,nota2,nota3); System.out.println("Promedio: " + prom); } catch(ArithmeticException e1){ System.out.println("Caso 1"); System.out.println("Excepcion: " + e1); System.out.println("Causa: " + e1.getCause()); } catch(NotaFueraDeRango e2){ System.out.println("Caso 2"); System.out.println(e2); } catch(ArrayIndexOutOfBoundsException e3){ System.out.println("Caso 3"); System.out.println(e3); } catch(NumberFormatException e4){ System.out.println("Caso 4"); System.out.println(e4); } catch(NotaFueraDeRango1 e5){ System.out.println("Caso 5"); System.out.println("Excepcion: " + e5); System.out.println("Causa: " + e5.getCause()); } System.out.println("****FIN****"); } static double calculaPromedio(double n1, double n2, double n3) throws NotaFueraDeRango,NotaFueraDeRango1{ ArithmeticException e; ArithmeticException e1; e = new ArithmeticException("Error al calcular el promedio en la nota1 y nota2."); e.initCause(new NotaFueraDeRango()); e1 = new ArithmeticException("Error al insertar la nota 3."); e1.initCause(new NotaFueraDeRango1()); if(n1 < 1 || n1 > 20){ throw e; } if(n2 < 1 || n2 > 20.0){ throw e; } if(n3 < 1 || n3 > 30){ throw e1; } return ((n1+n2+n3)/3); } } public class NotaFueraDeRango extends Exception{ public NotaFueraDeRango(){ super("Error: Nota debe estar en el rango de [0-20]."); } public NotaFueraDeRango(String msg){ super(msg); } } public class NotaFueraDeRango1 extends Exception{ public NotaFueraDeRango1(){ super("Error: La Nota 3 debe estar en el rango [0-30]."); } public NotaFueraDeRango1(String msg){ super(msg); } }

S-ar putea să vă placă și