Usando finally e throws

Podemos querer definir um bloco de código para ser executado ao sair de um bloco try/catch.
Exceções podem causar erros que encerram métodos prematuramente, deixando recursos como conexões ou arquivos abertos.
O bloco finally é usado para garantir que…


This content originally appeared on DEV Community and was authored by Java para Iniciantes (Oracle)

  • Podemos querer definir um bloco de código para ser executado ao sair de um bloco try/catch.

  • Exceções podem causar erros que encerram métodos prematuramente, deixando recursos como conexões ou arquivos abertos.

  • O bloco finally é usado para garantir que ações como o fechamento de recursos sejam realizadas, independentemente de ocorrer uma exceção.

  • O bloco finally é incluído ao final de uma sequência try/catch.

try {
// bloco de código cujos erros estão sendo monitorados
}
catch (TipoExceç1 obEx) {
// tratador de TipoExceç1
}
catch (TipoExceç2 obEx) {
// tratador de TipoExceç2
}
//...
finally {
// código de finally
}

  • O bloco finally é sempre executado ao sair de um bloco try/catch, independentemente da causa.

  • Seja o bloco try finalizado normalmente ou devido a uma exceção, o código em finally será o último a ser executado.

  • O bloco finally também é executado se o código no bloco try ou catch retornar do método.

Image description

Image description

Usando throws

  • Quando um método gera uma exceção que não trata, ele deve declará-la em uma cláusula throws.

tipo-ret nomeMét(lista-parâm) throws throws lista-exceç {
// corpo
}

  • lista-exceç é uma lista separada por vírgulas com as exceções que o método pode lançar para fora dele.

  • Exceções que são subclasses de Error e RuntimeException não precisam ser especificadas na cláusula throws; o Java as assume automaticamente.

  • Outras exceções precisam ser declaradas na cláusula throws, caso contrário, causam erro de compilação.

  • Exemplo anterior: ao usar entradas do teclado, a cláusula throws java.io.IOException foi adicionada ao método main() para tratar a exceção de I/O.

  • O método prompt() pode gerar uma IOException ao ler do teclado, mas não a trata internamente, usando throws para delegar o tratamento para o método chamador.

Image description

  • IOException é totalmente qualificada com o nome do seu pacote, java.io.

  • O sistema de I/O do Java está no pacote java.io, onde IOException é definida.

  • Também seria possível importar java.io e referenciar IOException diretamente.


This content originally appeared on DEV Community and was authored by Java para Iniciantes (Oracle)


Print Share Comment Cite Upload Translate Updates
APA

Java para Iniciantes (Oracle) | Sciencx (2024-10-22T00:56:54+00:00) Usando finally e throws. Retrieved from https://www.scien.cx/2024/10/22/usando-finally-e-throws/

MLA
" » Usando finally e throws." Java para Iniciantes (Oracle) | Sciencx - Tuesday October 22, 2024, https://www.scien.cx/2024/10/22/usando-finally-e-throws/
HARVARD
Java para Iniciantes (Oracle) | Sciencx Tuesday October 22, 2024 » Usando finally e throws., viewed ,<https://www.scien.cx/2024/10/22/usando-finally-e-throws/>
VANCOUVER
Java para Iniciantes (Oracle) | Sciencx - » Usando finally e throws. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/10/22/usando-finally-e-throws/
CHICAGO
" » Usando finally e throws." Java para Iniciantes (Oracle) | Sciencx - Accessed . https://www.scien.cx/2024/10/22/usando-finally-e-throws/
IEEE
" » Usando finally e throws." Java para Iniciantes (Oracle) | Sciencx [Online]. Available: https://www.scien.cx/2024/10/22/usando-finally-e-throws/. [Accessed: ]
rf:citation
» Usando finally e throws | Java para Iniciantes (Oracle) | Sciencx | https://www.scien.cx/2024/10/22/usando-finally-e-throws/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.