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 коди бештар тоза ва бехатартар мекунад.