1
resposta

Uso do rethrow

Quero saber se entendi da maneira correta. No caso o rethrow serve para delegar a quem está abaixo da pilha o tratamento? Eu posso até tá falando a defiinição correta, mas eu não entendi a real utilidade. Não seria melhor tratar já quando a exceção assim que fosse capturada?

1 resposta

Olá, Guilherme! Tudo bem?

Primeiro quero te pedir desculpas pela demora em dar uma resposta.

O rethrow é utilizado para propagar uma exceção para uma camada superior, no exemplo dado pelo instrutor a exceção foi lançada dentro de functionOne, mas por causa do rethrow ela foi propagada para o nível da main, então acredito que a sua definição está sim correta.

Quanto a necessidade de utilizar o rethrow, talvez realmente não tenha ficado muito clara com o exemplo, mas essa instrução pode ser útil para situações em que tratar a exceção assim que lançada não seja o ideal.

Por exemplo, uma situação onde o nível atual, onde a exceção está sendo lançada, ainda não possui informações o suficiente para você tratar aquele problema. E nesse caso, é interessante o uso do rethrow para propagá-la a um nível onde seja melhor tratada.

Espero ter ajudado, bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado. ✓