Junior — Middle
L'utilisation de close à l'intérieur d'un bloc try aura-t-elle un effet?
sobes.tech IA
Réponse de l'IA
Если вызвать метод close() внутри блока try, то он будет выполнен, но если в блоке try произойдет исключение до вызова close(), то этот вызов может быть пропущен. Поэтому для корректного освобождения ресурсов лучше использовать конструкцию try-with-resources или вызывать close() в блоке finally.
Пример с try-with-resources:
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
// работа с br
} // br.close() вызовется автоматически
Если же вы вызываете close() внутри обычного try, то при исключении до вызова close() ресурс не будет закрыт, что может привести к утечкам ресурсов.