Ao escrever programas de Java, as exceções geralmente são solicitadas a serem capturadas, e algumas exceções não precisam ser capturadas à força. Pessoas que foram transferidas de outros idiomas como eu estão de fato um pouco confusos, então vou reinterpretá -lo no meu entendimento.
A classe base de exceção é a exceção, e as subclasses de exceção incluem RuntimeException e outras exceções. Essas outras exceções são chamadas de exceções verificadas, e a RunTimeException é chamada de exceções desmarcadas.
Não é fácil entender apenas olhando para o nome. O compilador sabe que todos os tipos ou métodos podem lançar exceções e, quando você usa um determinado tipo ou método, o compilador solicitará que você pegue exceções conhecidas. A possível exceção conhecida a esses compiladores é a exceção verificada. Por exemplo, quando você fecha o fluxo de arquivos, a IoException já declarou no método próximo que ele pode ser jogado, e o compilador solicita que a exceção deve ser capturada. A exceção de RuntimeTexception não é conhecida durante o estágio de compilação e só pode ser determinado durante o estágio de corrida. Porque esse divisor pode ser alterado no estágio de corrida, nenhum aviso de captura. Essas exceções de tempo de execução são exceções desmarcadas.
Em suma, o Java deve tornar o programa estável o máximo possível. Esta explicação deve ser mais clara.
Vamos direto ao ponto.
Alguns amigos podem ter encontrado essa situação ao depurar o programa. Existem apenas duas razões: 1. O tópico em que a exceção está localizada não é o mesmo thread que o thread que você está capturando, 2. O programa não apresenta uma exceção, mas um erro. Erro, como exceção, herda do Throwable, refere -se a um erro grave que não deve ser capturado. Quando vi essa explicação, fui tão estúpido que não entendi por que não deveria pegar o erro. Como ocorre um erro, o programa não será executado diretamente, por isso não faz sentido pegá -lo. Então meu problema vem novamente. De fato, essa suposição não é verdadeira, porque se o erro realmente existir, você terá descoberto problemas no ambiente de desenvolvimento e é impossível publicá -los no ambiente oficial.
Infelizmente, eu percorri um longo caminho e fiz uma coisa tão estúpida, então não discuta se o erro deve ser capturado!
Ainda tenho conhecimento e o objetivo da escrita é obter a orientação de todos. Se o artigo o ajudar, seria ótimo.