tecnología de la base de Java para leer 10 (E) - Excepciones y aserciones

anormal

Mal funcionamiento de clasificación

excepción throwable es la clase padre de todas las clases, de error y de clase no IOException bajo investigación, por un error del sistema, un error de lectura causados por el IO leer, y está bajo la clase RuntimeException investigación, un error causado por el programa en sí, la necesidad de proporcionar gestor de excepciones, por ejemplo, una matriz de acceso transfronterizo y otras cuestiones.
Para una clase de excepción existente, es muy fácil tirar, en este caso:
1) para encontrar una clase de excepción adecuado. 2) crear un objeto de esta clase. 3) Los objetos arrojados.
capturar excepciones
try {} catch {}
para detectar la excepción y produce una excepción, por lo general, para capturar las excepciones debe saber cómo manejar, pero no saben cómo manejar las excepciones siguen siendo pasado.
capturar excepciones pueden volver a empaquetar una excepción en una captura o arrojar nueva excepción.
finalmente cláusula
independientemente de si una excepción es capturada, se ejecuta finalmente cláusula del código.
Cuando el recurso para el reciclaje o cerrado, con fin es una opción buena.

bloque try interior único deber es asegurar que cierre el flujo de entrada. bloque try exterior y sólo una responsabilidad es asegurarse de que aparece el informe de errores. Este diseño más claro.

try
{
	try
	{
	....
	}
	finally
	{
	//close resource
	}
}
catch(IOException e)
{
//handle error message
}

Si el bloque try emite una excepción, sino también el método close lanza una excepción, lo que traerá
a un problema difícil., Trate declaración con recursos pueden manejar esta situación muy bien. La excepción original se lanza de nuevo, y la excepción que se va a cerrar "se suprime% de estas anormalidades se captura automáticamente. Supongamos que los recursos pertenecen a una clase que implementa la interfaz AutoCloseable.
El intento (RES Recursos = ...)
{
Trabaja con RES
}
traza análisis pila
método Throwable clase getStackTrace invocación, hasta que la matriz de objetos

Throwable t = new Throwable();
StackTraceElement[] frames = t.getStackTrace();
  for (StackTraceElement f : frames)
         System.out.println(f);    

El empleo de técnicas inusuales
único mecanismo de excepción en circunstancias excepcionales, porque cuanto más tiempo el tiempo que tarda mecanismo de excepción.
Separar el procesamiento y manejo de errores normal.
Uso jerarquía de excepciones, se encontró una subclase más apropiado o crear sus propias clases de excepción.
Tras la detección de un error, "duras" mejor que dejar
pasar una excepción que captura los mejores

afirmación

mecanismo de afirmación permite insertar un código para comprobar las declaraciones durante la prueba. Cuando se libera el código, se eliminará automáticamente el estado de detección de la inserción.
Dos afirmaciones formas, estas dos formas de la enfermedad serán detectados si el resultado es falso, lanzar una excepción AssertionError. En la segunda forma, la expresión del transfiere constructor AssertionError humano, y se convierte en una cadena de mensaje.

assert condition;
assert condition: value;

Habilitar y deshabilitar las afirmaciones
activar o desactivar la función de cargador de clases afirmación (cargador de clases). Cuando se desactiva afirmado, el cargador de clases se saltará códigos afirmó, por lo tanto, no reduce la velocidad de la corriente.
java -enableassertions MiApl

Use afirmaciones completa comprobación de parámetros
• error de aserción es fatal error irrecuperable.
• cheques afirmación sólo para el desarrollo y prueba de fase
afirmación sólo se debe utilizar para determinar la posición del error en el programa durante la fase de prueba.
Afirmación de este método depende de la detección de parámetros de los parámetros de restricción.

Uso afirmó documento asume

Publicado 15 artículos originales · ganado elogios 1 · visitas 131

Supongo que te gusta

Origin blog.csdn.net/qq_17236715/article/details/104875140
Recomendado
Clasificación