Sobes.tech
Junior — Middle

Dasturlash tilida satrlar bilan ishlash kontekstida oddiy satr o'zgaruvchisi bilan final sifatida e'lon qilingan o'zgaruvchi o'rtasidagi farq nima?

sobes.tech AI

AIdan javob

Java'da, satrli o'zgaruvchi e'lon qilishda final kalit so'zi, satr ob'ektiga bo'lgan havola o'rnatilgandan keyin o'zgartirilmasligini anglatadi. Ya'ni, agar o'zgaruvchi final String s = "hello"; tarzida e'lon qilingan bo'lsa, keyinchalik unga boshqa satr tayin qilish mumkin emas.

Java'da satr o'zi o'zgarmas (immutable) ekanligini tushunish muhim, shuning uchun satr ob'ektining mazmuni na oddiy, na final o'zgaruvchilar uchun o'zgartirilishi mumkin emas. Farqi shundaki, oddiy satr o'zgaruvchisi turli vaqtlarda turli satr ob'ektlariga murojaat qilishi mumkin, final esa doimo bir xil ob'ektga murojaat qiladi.

Misol:

String a = "hello";
a = "world"; // ruxsat etilgan

final String b = "hello";
b = "world"; // kompilatsiya xatosi