Usando finally em um exemplo real
Blocos finally geralmente são usados para fechar e liberar recursos, como um banco de dados ou arquivo, que estão em uso — independentemente do fluxo normal ou de ter ocorrido uma exceção.
Aqui, você vai simular abrir um arquivo, escrever texto nesse arquivo e fechá-lo — tudo por meio de chamadas de método. Você usará finally para fechar o arquivo simulado, aconteça ou não uma exceção.
Este exercicio faz parte do curso
Tipos de Dados e Exceções em Java
Instruções do exercicio
- Comece um bloco try envolvendo o trabalho de abrir um arquivo e escrever nele
- Capture qualquer exceção que possa ocorrer ao abrir o arquivo simulado e escrever texto nele.
- Adicione um bloco finally para fechar o arquivo simulado, que será chamado tanto se o programa rodar sem problemas quanto se ocorrer uma exceção ao abrir ou escrever no arquivo.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
public class FinallyCleanup {
public static void main(String[] args) {
String[] words = { "Lorem", "ipsum", "dolor", "sit", "amet" };
// Open a try block
____ {
open();
for (int i = 0; i <= words.length; i++) {
writeToFile(words[i]);
}
// Catch any possible exception
} ____ (____ ____) {
System.out.println("Problem writing words to file");
// Add a finally block to close the file
} ____ {
close();
}
}
public static void open() {
System.out.println("Our file is open");
}
public static void close() {
System.out.println("Our file is closed");
}
public static void writeToFile(String text) {
System.out.println(text + " has been written to the file");
}
}