Использование finally на практике
Блок finally обычно применяется для закрытия и освобождения ресурсов — например, подключения к базе данных или файла — вне зависимости от того, завершилась программа нормально или возникло исключение.
В этом упражнении вы смоделируете открытие файла, запись текста в него и закрытие файла — всё с помощью вызовов методов. Используйте finally, чтобы закрыть смоделированный файл независимо от того, произошло исключение или нет.
Это упражнение является частью курса
Типы данных и исключения в Java
Инструкции к упражнению
- Оберните код, который открывает файл и записывает в него данные, в блок
try. - Перехватите любое исключение, которое может возникнуть при открытии смоделированного файла или записи текста.
- Добавьте блок
finally, чтобы закрыть смоделированный файл — он будет вызван как при успешном выполнении программы, так и при возникновении исключения в процессе открытия файла или записи.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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");
}
}