[Notas] a partir do zero para aprender a manipulação de exceção Java

Podemos nos concentrar na conta do autor, se concentrar em aprender Java a partir de notas de raspadinhas antologia. Nós também pode aprender a partir de um catálogo visitar o blog do blog jardim do autor. Os documentos de cinema a aprendizagem ea partilha de informações sobre os programadores com base no emprego classe cavalo de vídeo escuro, e notas de gravação e suas próprias opiniões. Bem-vindo a aprender e discutir.

[Notas] a partir do zero para aprender diretório Java

O que é anormal?

Anormalidade não é normal, ocorrem erros quando compilar o nosso código ou tempo de execução. Quando escrever o código, muitas vezes alguns pequenos problemas, então, a fim de nos ajudar a lidar com esses problemas, exceção Java fornece um mecanismo para nós. Exceção contém o tipo errado, localização e causa
a arquitetura anormal:
Throwable (a maioria de nível de entrada)
Erro: problemas graves podem surgir não manipulado
exceção: pode lidar com problemas

abordagem incomum

1.jvm maneira de exceções punho:
Se ocorrer uma exceção que não lidar com, JVM vai nos ajudar a lidar com, ele tipo incomum, porque não não aparecem na linha de comando, e também terminou o programa, código de exceção não vai estar de volta execução.

2. Captura processo de
instrução try ... catch
formato:

 try {
  有可能出现问题的代码;
} catch(ArithmeticException ae) {
  处理异常;
    }

A ordem de tentativa de execução ... catch:
Primeiro, a instrução try, se o código seguinte incomum, anormal não é executado saltar directamente para a instrução catch, declaração após a captura, todo o fim try ... catch, se não é incomum, após a instrução é executada try, try ... catch directamente ao fim, não executando instrução catch

3. jogado fora
quando não quer tratar a exceção, ou a incapacidade de lidar com, podemos optar por lançar uma exceção, que chama o método que exceções identificador, use a palavra-chave joga na declaração de um método lança uma exceção

Por exemplo:

import java.io.FileWriter;
import java.io.IOException;


public class ExceptionDemo2 {
	public static void main(String[] args) throws Exception {
		//method();
		
		function();
		
	}
	
	public static void function() throws Exception {
		FileWriter fw = new FileWriter("a.txt");
	}

	private static void method() {
		try {
			System.out.println(1);
			//System.out.println(2 / 0);
			System.out.println(2);
		} catch(ArithmeticException ae) {
			System.out.println("除数不能为0");
		}
		
		System.out.println(3);
	}

}

Lidar com várias exceções

Como lidar com várias exceções:
1. Você pode usar uma pluralidade de tentativa .. declaração .catch
2. Usando uma pluralidade de try e catch

Sequência de entre a pluralidade de captura:
pode haver entre a pluralidade de sub-mãe capturar
nenhuma ordem entre o mesmo nível
se o pai criança, a classe principal tem de ser colocado atrás do excepção

类 Throwable

public class ExceptionDemo3 {
	public static void main(String[] args) {
		try {
			System.out.println(2 / 0);
		} catch (ArithmeticException e) {
			// String getMessage() : 原因
			// System.out.println(e.getMessage());

			// String toString() 类型和原因
			// System.out.println(e.toString());

			// void printStackTrace():类型原因和位置,和jvm处理不同,不会终止程序运行
			e.printStackTrace();
		}

		// System.out.println("hello");
	}

}

finalmente

finalmente: try ... catch uso de combinação, tais como trabalhos de acabamento para a liberação de recursos, independentemente da instrução try ... catch é executada, finalmente dadas executa o código, usado para tratar alguns dos toques finais, tais como a liberação de recursos

try {
    有可能出现问题的代码;
} catch(异常对象) {
    处理异常;
} finally {
    释放资源;
    清理垃圾;
}

classificação incomum

Executar um anormal: RuntimeException é uma subclasse de exceções de tempo de execução, são livres para escolher o tratamento em tempo de compilação ou não lidar com
exceção em tempo de compilação: Exceção é uma subclasse de subclasse não-RuntimeExcpetion devem ser tratados em tempo de compilação

Acho que você gosta

Origin www.cnblogs.com/zllk/p/12656772.html
Recomendado
Clasificación