Junior — Middle
Dasturda resurslarni avtomatik ravishda bo'shatishni qanday ta'minlash mumkin?
sobes.tech AI
AIdan javob
Java'da resurslarni avtomatik ravishda ozod qilish odatda try-with-resources konstruktsiyasi yordamida amalga oshiriladi, u Java 7 da kiritilgan. Bu, AutoCloseable interfeysini amalga oshiradigan resurslarni (masalan, kirish/chiqish oqimlari, ma'lumotlar bazasi ulanishlari va boshqalar) try blokining tugashidan so'ng avtomatik ravishda yopishga imkon beradi, hatto blok ichida istisno yuz bersa ham.
Misol:
try (BufferedReader reader = new BufferedReader(new FileReader("file.txt"))) {
String line = reader.readLine();
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
}
// reader bu yerda avtomatik ravishda yopiladi
Avvalroq, resurslarni bo'shatish uchun finally blokidan foydalanilgan, unda close() metodi aniq chaqirilgan. Ammo try-with-resources kodni yanada toza va xavfsiz qiladi.