3
respostas

Quando usar try catch, e quando usar throw

Fiquei na dúvida quando devo implementar o try catch e quando devo implementar o throw em meu código e qual a diferença entre ambos.

3 respostas

Olá Calixto!

O Try/Catch você utiliza quando já está tratando a exceção.

O throw você utiliza quando quer passar o tratamento da exceção para outra classe.

Oi Calixto,

pelo que entendi do curso e o jeito que utilizo é:

  • try/catch: uso quando não quero que a exceção se perpetue pelo código, pois não vou usar aquele "problema" em nenhum outro lugar.
  • throws: quando quero passar a possível exceção do método que estou para outras classes, quando o tratamento não é necessário naquela classe pois vou precisar da exceção em outra classe.
  • throw: quando eu quero lançar uma exceção/quando quero que aquele método especifico de um erro(exceção)

Complementando o que os colegas escreveram.

try/catch: Utiliza para tratar os possíveis problemas(exceções) e já resolvê-los.

throws: Pelo o que entendi depende da hierarquia de exceções (unchecked / checked). Se estiver utilizando uma exceção checked o compilador vai obrigar que vc use o throws "Exceção" na assinatura do método para deixar explícito que ele pode lançar tal exceção. Feito isso vc joga a responsabilidade de resolver a exceção para a pilha. Ou então usa o try/catch e resolve no próprio método.

throw:Para lançar uma exceção, quando a exceção é lançada o código para de executar abruptamente.