Sabemos que a tentativa é responsável por digitar códigos que podem produzir exceções; A Catch é responsável por lidar com possíveis exceções em tentativa, como registrar logs de erros para permitir que os negócios sejam executados normalmente; Finalmente, responsável pelo trabalho após a liberação de recursos e o código que deve ser executado, independentemente de haver ou não ser geralmente colocado em finalmente. Se a captura e finalmente também experimentar exceções, qual será o efeito?
tente {// java.lang.arithmeticexception int a = 1/0; } catch (Exceção e) {System.out.println ("Catch"); // java.lang.nullPointerException String value = null; System.out.println (value.Length ()); } finalmente {System.out.println ("finalmente"); // java.lang.arrayIndexoutOfBoundSexception int [] Array = {1, 2, 3}; System.out.println (Array [6]); }O resultado final da execução deste código é: uma ArrayIndexoutOfBoundSexception será lançada. Uma exceção ocorre no código na tentativa e a captura correspondente será executada;
Se ocorrer uma exceção quando a captura será executada finalmente; Se, finalmente, houver uma exceção, ele será jogado diretamente à JVM porque não é processado. Se não for usado aqui
Finalmente, bloco, uma NullPointerException será lançada.
Isso significa que exceções que aparecem em captura e finalmente serão jogadas diretamente. Se não o processarmos, um erro será gerado em tempo de execução. Isso nos lembra que, se a captura e, finalmente, exceções também poderá ocorrer, o Try-Catch deverá ser processado novamente.
Algumas coisas notáveis (devem ler) no artigo acima "Try-Catch-Finally" são todo o conteúdo que compartilho com você. Espero que você possa lhe dar uma referência e espero que você possa apoiar mais o wulin.com.