Geralmente, existem duas maneiras de lidar
Se um método lança uma exceção de tempo de execução (lança o RuntimeException) depois, o chamador não precisa lidar com isso
Se um método for jogado após uma exceção de tempo de compilação, o chamador deve lidar com ele, jogue ou try-capath;
As exceções durante o tempo de execução geralmente não são tratadas e geralmente são erros lógicos no programa, como o denominador sendo 0 como o divisor. . .
Observe que, se ocorrer uma exceção na tentativa, a declaração abaixo da tentativa não será executada. Volte para encontrar o processamento de exceções correspondentes a captura e a próxima declaração será processada (ou seja, a declaração após o Try-Catch-Finally continuará sendo executada)
/*
* Às vezes, podemos lidar com exceções, mas às vezes não temos permissão para lidar com uma exceção.
* Ou, se eu não conseguir lidar com isso, não vou lidar com isso.
* Para resolver o problema de erro, o Java fornece outra solução para esta situação: lançar.
*
* Formato:
* lança o nome da classe de exceção
* Nota: Este formato deve ser seguido por colchetes do método.
*
* Perceber:
* Tente não lançar exceções no método principal.
* Mas eu fiz isso por uma questão de conveniência.
*
* Resumo:
* Uma exceção é lançada durante o período de compilação e deve ser tratada pelo chamador no futuro.
* Uma exceção é lançada durante o tempo de execução e as chamadas futuras não precisam ser processadas.
*/
Quaisquer exceções da RunTimeException e suas subclasses não são processadas (não jogadas ou capturadas). Se você realmente sabe que uma exceção será lançada em tempo de execução, não há problema em verificar diretamente a lógica de modificar o programa! ! !
Exceção do pacote; importar java.text.parseException; importar java.text.simpledEformat; importar java.util.date; classe pública ExceptionDemo {public static void main (string [] args) {system.out.println ("antes de chamar o método do método; {E.PrintStackTrace ();} System.out.println ("Call Method 2 Após chamar o método 1"); Method2 ();} public static void method2 () lança tempo de execução {int a = 10; int b = 0; system.out.println (lata a/b = "+a/b); A exceção for lançada, o chamador não precisa lidar com a exceção} public static void method () lança parseexception {string string = "2015-05-30"; simledateFormat sdf = new SimpleDateFormat ("AAAUs-MM-DD"); o formato da string será gradualmente parecido e se a exceção não for, se a exceção não for, se a exceção não for, se a exceção não for, se a exceção não é que a exceção não for, se a exceção não for, se a exceção não for, se a exceção não for, se a exceção não é que a exceção não for, se a exceção não é que a exceção não for, se a exceção não é que a exceção não for, se a exceção não é que a exceção não seja, se a exceção não é que a exceção não for, se a exceção não é que a exceção não for, se a exceção não é que a exceção não for, se a exceção não é que a excepct. SimpleDateFormat ("AAAA-MM-DD HH: MM: SS"); // Se a String tiver apenas 2015-05-30 e não houver acompanhamento, será executado uma exceção porque este sdf2 não pode corresponder a HH: mm: ssdate date = sdf.parse (string); system.out.println (date "date" date: "date" date ";Diagrama de estrutura de exceção:
Nós, programadores, não podemos lidar com exceções de erro sem ter que lidar com eles.
Não precisamos lidar com a exceção do tempo de execução da exceção de tempo de execução.
Os outros são exceções no período de compilação, e temos que lidar com eles.
O exposto acima é todo o conteúdo que o editor lhe traz sobre a diferença entre o diagrama de estrutura anormal, a exceção do período de compilação e a exceção do período de execução. Espero que seja útil para todos e apoie mais wulin.com ~