Utiliser finally dans un exemple concret
Les blocs finally servent généralement à fermer et à nettoyer des ressources, comme une base de données ou un fichier, qui sont en cours d'utilisation — peu importe le déroulement normal du programme ou la survenue d'une exception.
Ici, vous allez simuler l'ouverture d'un fichier, l'écriture de texte dans ce fichier, puis sa fermeture — le tout au moyen d'appels de méthodes. Vous utiliserez finally pour fermer le fichier simulé, qu'une exception survienne ou non.
Cette activité fait partie du cours
Types de données et exceptions en Java
Instructions de l’exercice
- Démarrez un bloc try autour du travail qui ouvre un fichier et écrit dans ce fichier.
- Interceptez toute exception qui pourrait survenir lors de l'ouverture du fichier simulé et de l'écriture de texte dans celui-ci.
- Ajoutez un bloc finally pour fermer le fichier simulé; il sera exécuté que le programme s'exécute sans problème ou qu'une exception survienne à l'ouverture ou à l'écriture dans le fichier.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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");
}
}