Sobes.tech
Junior — Middle

Чӣ гуна метавон кафолат дод, ки дар барнома озод кардани худкории захираҳо таъмин карда шавад?

sobes.tech AI

Ҷавоб аз AI

Дар Java, озодкунии худгардонӣ автоматӣ одатан бо истифода аз сохтори try-with-resources таъмин карда мешавад, ки дар Java 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() explicitly даъват мешуд. Аммо try-with-resources коди бештар тоза ва бехатартар мекунад.