Junior — Middle
Jak zajistit automatické uvolnění zdrojů v programu?
sobes.tech AI
Odpověď od AI
V jazyce Java je automatické uvolňování zdrojů obvykle zajištěno konstrukcí try-with-resources, která byla zavedena v Java 7. Umožňuje automaticky zavřít zdroje, které implementují rozhraní AutoCloseable (například vstupní/výstupní proudy, připojení k databázi atd.) po dokončení bloku try, i když uvnitř bloku dojde k výjimce.
Příklad:
try (BufferedReader reader = new BufferedReader(new FileReader("file.txt"))) {
String line = reader.readLine();
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
}
// reader je zde automaticky zavřen
Dříve se pro uvolnění zdrojů používal blok finally, ve kterém se explicitně volala metoda close(). Ale try-with-resources činí kód čistším a bezpečnějším.