Articles of handling

Manipulação de exceção Java – captura de exceção de superclass

Eu tenho uma pergunta sobre como lidar com exceção no aplicativo da web. Muitas vezes eu ouço pegar a super aula Exceção é uma má ideia. Muitas vezes eu escrevo códigos para capturar todas as exceções em classs de servlet java / action struts. try { // call business facade // business facade calls DAO […]

Devolver um valor E lançar uma exceção?

Estou trabalhando com uma API que afirma retornar true se for bem-sucedida e false se falhar. Mas, também afirma lançar exceções diferentes se falhar. Como pode retornar falso e lançar uma exceção?

porque interromper () não funciona como esperado e como funciona

Eu quero interromper um thread, mas invocar interromper () parece não funcionar, abaixo está o código de exemplo: public class BasicThreadrRunner { public static void main(String[] args) { Thread t1 = new Thread(new Basic(), “thread1”); t1.start(); Thread t3 = new Thread(new Basic(), “thread3”); Thread t4 = new Thread(new Basic(), “thread4”); t3.start(); t1.interrupt(); t4.start(); } } […]

O Java declara “lança exceção” por padrão?

Considere as seguintes classs: class X { public void met() { } } e class Y extends X { public void met() throws NullPointerException { throw new NullPointerException(); } } Pelo que li em outras perguntas ( Por que não é possível replace methods lançam exceções mais amplas do que o método substituído? E exceção […]

A ordem de execução try-catch-finally parece ser aleatória

Eu estou tentando entender como funciona o stream de execução try-catch-finally . Há algumas soluções dos usuários do Stack Overflow em relação ao stream de execução. Um exemplo é: try { // … some code: A } catch(…) { // … exception code: B } finally { // finally code: C } O código A […]

A class IOException em Java deve ter sido uma RuntimeException não verificada?

Você concorda que os projetistas da class Java java.io.IOException deveriam ter feito dela uma exceção de tempo de execução não-verificação derivada de java.lang.RuntimeException vez de uma exceção verificada derivada apenas de java.lang.Exception ? Eu acho que a class IOException deveria ter sido uma exceção não verificada porque há pouco que um aplicativo pode fazer para […]

Como saber qual exceção é lançada

Estou fazendo uma revisão para nossa base de código, e há muitas declarações como esta: try { doSomething() } catch (Exception e) { } mas eu gostaria de uma maneira de saber qual exceção é lançada por doSomething () (não há nenhuma instrução throw na implementação do doSomething) para que eu possa pegar essa exceção […]

Adicione uma mensagem personalizada à exceção gerada enquanto mantém o rastreamento de pilha em Java

Eu tenho um pequeno pedaço de código que executa algumas transactions para processamento. Cada transação é marcada com um número de transação, que é gerado por um programa externo e não é necessariamente sequenciado. Quando eu pego uma exceção no código de processamento, estou jogando-a para a class principal e registrando-a para revisão posterior. Gostaria […]

Como posso lidar com uma IOException que sei que nunca pode ser lançada, de uma maneira segura e legível?

“A principal diferença entre uma coisa que pode dar errado e uma coisa que não pode dar errado é que quando uma coisa que não pode dar errado dá errado, geralmente é impossível consertar ou reparar.” -Douglas Adams Eu tenho uma class FileItems. O construtor FileItems pega um arquivo e lança uma exceção (FileNotFoundException) se […]

Por que java.lang.Throwable é uma class?

Em java adjetivos terminados em -able são interfaces Serializable , Comparable etc … Então, por que é Throwable uma class? O tratamento de exceções não seria mais fácil se Throwable fosse uma interface? (Editar: por exemplo, classs de exceção não precisam estender Exceção / RuntimeException.) Obviamente, alterá-lo agora está fora de questão. Mas poderia ser […]