Junior — Middle
In which cases is it advisable to use the finally block in Java for resource handling or operation termination?
sobes.tech AI
Answer from AI
The finally block in Java is used for guaranteed execution of code that must run regardless of whether an exception occurred or not. This is especially important when working with resources that require releasing, such as files, network connections, streams.
It is advisable to use finally when:
- Closing open resources (InputStream, OutputStream, Connection, etc.)
- Performing cleanup or resetting state
- Completing transactions or operations that must be finished in any case
Example:
FileInputStream fis = null;
try {
fis = new FileInputStream("file.txt");
// work with the file
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
In modern Java versions, try-with-resources is recommended, which automatically closes resources, but finally is still relevant for other cleanup operations.