Junior — Middle
Java'da resurslarni boshqarish yoki operatsiyalarni yakunlash uchun finally blokidan qachon foydalanish maqsadga muvofiq?
sobes.tech AI
AIdan javob
Java'da finally bloki, istisno bo'lsa ham, bo'lmasa ham, bajarilishi kerak bo'lgan kodni ta'minlash uchun ishlatiladi. Bu, ayniqsa, fayllar, tarmoq ulanishlari, oqimlar kabi resurslarni bo'shatish talab qilinadigan ishlar bilan ishlashda muhimdir.
Finally ni ishlatish tavsiya etiladi, agar:
- Ochiq resurslarni yopish (InputStream, OutputStream, Connection va boshqalar)
- Tozalash yoki holatni tiklash
- Har doim bajarilishi kerak bo'lgan tranzaktsiyalar yoki operatsiyalarni yakunlash
Misol:
FileInputStream fis = null;
try {
fis = new FileInputStream("file.txt");
// fayl bilan ishlash
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Zamonaviy Java versiyalarida, resurslarni avtomatik yopadigan try-with-resources tavsiya etiladi, lekin finally boshqa yopish operatsiyalari uchun ham muhimdir.