Olá pessoal ?
Quais as situações em que devemos usar uma exceção?
Ela só pode ser tratada onde acontece?
Grato
As exception podem ser perpetuadas para fora de métodos, através da instrução throws na assinatura do método.
As excessos devem ser utilizadas com cuidado, pois tem um custo de execução, porém são features poderosas.
Estas podem ser utilizadas em situações em que você queira perpetuar informações de problemas encontrados durante a execução de determinada tarefa, e então poderá capiturá-la em níveis mais acima.
De uma estudada em bibliografias sobre o assunto, para entender melhor como trabalhar com elas.