Open JuniorMoura10 opened 2 years ago
Camila, nas aulas de tratamento de exceção, vc diz que "se eu lançar uma exception, outro método tem que tratar"! Pelo que deu pra eu entender, é tipo "jogar o problema para outro resolver". Como sabemos, programas grandes são divididos em partes e depois, junta tudo! A minha dúvida é: Uma empresa(ou outros desenvolvedores) podem ver com maus olhos se, ao invés de eu tratar uma exce´tion na parte do programa que me cabe, eu simplesmente "lançar" todas as exceptions que, por ventura, a parte do programa que está sob minha responsabilidade venha a ter ou esta hipótese que eu levantei é impossível? Pergunto pq eu nunca trabalhei em um projeto em equipe! Acho que ficou claro o que eu quero saber, mas se não, me diz que eu tento ser mais claro!
Essa parte de lançar a exception significa que você não precisa tratar ela diretamente no método que eventualmente pode acontecer.
Por exemplo, quando estamos trabalhando com métodos da referente a leitura e escrita (I/O) de arquivos, alguns métodos obrigatoriamente lançam exceptions, logo temos que fazer um try-catch
ou throws
para que tratemos em outro método.
Isso não quer dizer que lançamos para outro desenvolvedor resolver. Nesse caso, nós podemos criar um outro método só para tratar essa exception, assim o código não fica tão poluído e cada um fica com uma reponsabilidade.
Consegui explicar?
Sim! Ficou claro! Mas só a nível de curiosidade (juro que não vou fazer! rsrs) é possível que eu lance uma exception para um método que outro desenvolvedor está criando? Ou eu precisaria saber para qual método lançar?
Em algum lugar do código essa exception deverá ser tratada ou lançada até chegar no método main. O contrário o código não compila.
No caso se o outro desenvolvedor usar o método que lança a exception, ele deve tratar. Isso estamos falando de Checked Exceptions.
Ou coloca o throws
o throws no método main. Que não é uma boa prática.
Hm... Era essa mesmo a minha dúvida!! Vlw, Camila!
Camila, nas aulas de tratamento de exceção, vc diz que "se eu lançar uma exception, outro método tem que tratar"! Pelo que deu pra eu entender, é tipo "jogar o problema para outro resolver". Como sabemos, programas grandes são divididos em partes e depois, junta tudo! A minha dúvida é: Uma empresa(ou outros desenvolvedores) podem ver com maus olhos se, ao invés de eu tratar uma exce´tion na parte do programa que me cabe, eu simplesmente "lançar" todas as exceptions que, por ventura, a parte do programa que está sob minha responsabilidade venha a ter ou esta hipótese que eu levantei é impossível? Pergunto pq eu nunca trabalhei em um projeto em equipe! Acho que ficou claro o que eu quero saber, mas se não, me diz que eu tento ser mais claro!