Sobes.tech
Junior — Middle

Kako osigurati automatsko oslobađanje resursa u programu?

sobes.tech АИ

Одговор од АИ

У Јавију, аутоматско ослобађање ресурса обично се обезбеђује помоћу конструкције try-with-resources, која је уведена у Јави 7. Она омогућава аутоматско затварање ресурса који имплементирају интерфејс AutoCloseable (на пример, улазно/излазни токови, везе са базом података итд.) након завршетка try блока, чак и ако унутар блока дође до изузетка.

Пример:

try (BufferedReader reader = new BufferedReader(new FileReader("file.txt"))) {
    String line = reader.readLine();
    System.out.println(line);
} catch (IOException e) {
    e.printStackTrace();
}
// reader се аутоматски затвара овде

Раније се за ослобађање ресурса користио блок finally, у којем се експлицитно позивао метод close(). Али try-with-resources чини код чистијим и безбеднијим.