Sobes.tech
Junior — Middle

შეგიძლიათ ახსნათ, რა ნიშნავს 'final' საკვანძო სიტყვას ცვლადებისთვის Java ენისთვის?

sobes.tech AI

პასუხი AI-სგან

Java-ში, როდესაც ცვლადს გამოაცხადებთ final საკვანძო სიტყვით, ეს ნიშნავს, რომ ინიციალიზაციის შემდეგ ამ ცვლადის მნიშვნელობა არ შეიძლება შეიცვალოს.

ეს ნიშნავს:

  • ბუღალტრული ტიპებისთვის (int, boolean და ა.შ.) მნიშვნელობა ფიქსირდება და არ შეიძლება გადანაცვლება.
  • რეფერენციული ტიპებისთვის (ობიექტებისთვის) არ შეიძლება შეცვალოს მიმთითებელი სხვა ობიექტზე, მაგრამ თავად ობიექტი შეიძლება იყოს შეცვლადი (თუ მისი მეთოდები ამას იძლევა).

მაგალითი:

final int x = 10;
x = 20; // კომპილაციის შეცდომა

final List<String> list = new ArrayList<>();
list.add("item"); // დაშვებულია, ობიექტი იცვლება
list = new ArrayList<>(); // შეცდომა, მიმთითებლის გადაყვანა არ შეიძლება

final-ის გამოყენება ეხმარება კოდის უფრო წინასწარმეტყველებად და უსაფრთხოდ გახადოს.