“Conocimientos Programación>Programación Java

Cómo crear clases de excepciones en Java

2015/3/2
El lenguaje de programación Java tiene un enfoque basado en excepciones a la manipulación de la detección de errores y la manipulación en el código. En lugar de crear un complejo sistema de anidados instrucciones if-else para tratar de atrapar todos los errores posibles , todo error puede ser organizada en una serie de " try-catch " declaraciones al final de una función de captura . Esto permite el control de errores para salir del camino de flujo real del programa y conduce a más legible, más fácil de mantener el código . Cosas que necesitará de computadora
Java Runtime Environment
Java Development Kit
editor de texto o IDE Java
Mostrar más instrucciones
1

Elige un clase padre . Cualquier subclase de java.lang.Exception se puede utilizar como la matriz para una nueva clase de excepción . Sin embargo , para este ejemplo , vamos a usar la clase Exception básica como padre. Excepción nos da todas las necesidades básicas de una excepción : es arrastrado , se puede imprimir un seguimiento de la pila , y permite que un mensaje se va a recuperar de la naturaleza de la excepción
2

Crear una subclase . extiende la clase principal. Esta es la misma que la creación de cualquier otra subclase en Java . Para una buena legibilidad del código , es normal al final siempre es el nombre de la clase con la palabra " excepción" . Para este ejemplo, usted construirá una excepción para el manejo de la entrada del usuario está mal, llamado , simplemente lo suficiente , BadUserInputException .

BadUserInputException clase pública se extiende Exception { }

Sólo este código en realidad le da todo lo que necesita inmediatamente comenzando lanzar y atrapar esta excepción y, en muchos casos, esto será todo lo que usted necesita.
3

Agregar características únicas para la excepción. Es posible que desee a su clase de excepción que tiene algunas características únicas por encima y más allá de la capacidad de ser lanzado y capturados con un seguimiento de pila imprimir . Por lo tanto, va a agregar algo de información nueva a su clase de excepción

BadUserInputException clase pública se extiende Exception { InputString private String ; .

GetInputString pública () {return ( InputString ) ;}
< p> BadUserInputException público (entrada String) {super (); InputString = entrada ;} ;}

Ahora, la excepción tendrá una función extra, getInputString (), que se puede llamar en cualquier momento la excepción de obtener una copia de la entrada del usuario está mal considerado que se imprime en un registro de errores o examinado por el programa para determinar qué hacer a continuación .
4

Añade una sentencia throw para funciones que puede causar la excepción que se produzca . Una excepción es inútil a menos que se lanza por una función . Una sentencia throw pasa esencialmente un error de la pila para permitir que una parte de alto nivel del programa para determinar qué se debe hacer con él. Este BadUserException será lanzado por una función getUserInput () , muy apropiadamente :

/*** Javadoc para getUserInput . Usted quiere mencionar aquí * que esta función emite un BadUserInputException * para que sepa coger más tarde. * @ Throws BadUserInputException Si se produce una entrada incorrecta . * @ Return la entrada del usuario si no excepción. * /Public String getUserInput ( ) throws BadUserInputException { BufferedReader en = new BufferedReader ( nuevo InputStreamReader ( System.in )); entrada String = in.readLine (); if ( validInput (entrada) tiro BadUserInputException (entrada) ; ! otra entrada return;}
5

Agregar código para detectar la excepción cuando se utilizan las funciones con que esto permitirá que su programa para reaccionar a los errores de una manera limpia controlado el código para hacerlo se verá como este sencillo ejemplo : . .

gameLoop public void () {try { printMenu () , la elección String = getUserInput (); if ( choice.equals ( " Q ")) quit (); otro continuar ( ) ; } catch ( BadUserIputException e) { System.out . println ( "ERROR :" + e.getInputString () + ": . no es una entrada válida ) ;} }

Programación Java
Múltiples objetivos en NetBeans Proyectos
Cómo probar la memoria Java Heap Tamaño
Cómo comprobar si ResultSet es nulo
Cómo Obtener el Valor Mod en Java
Cómo llamar a un método que devuelve una cadena en Java
Cómo cambiar un archivo de clase
Cómo crear las tablas de multiplicación utilizando Java y Código
Cómo asar un nudillo de cerdo
Conocimientos Informáticos © http://www.ordenador.online