Junior — Middle
შესაძლებელია თუ არა კლასის წევრებს გამოაცხადოთ უცვლელად მათი ინიციალიზაციის შემდეგ?
sobes.tech AI
პასუხი AI-სგან
დიახ, Java-ში შესაძლებელია კლასის წევრების გამოცხადება როგორც შეუცვლელი მათი ინიციალიზაციის შემდეგ, გამოყენებით საკვანძო სიტყვა final. ეს ნიშნავს, რომ ერთჯერად მნიშვნელობის მინიჭების შემდეგ, მას აღარ შეუძლია შეიცვალოს.
მაგალითი:
public class Example {
private final int id; // შეუცვლელი ველი
public Example(int id) {
this.id = id; // ინიციალიზაცია კონსტრუქტორში
}
public int getId() {
return id;
}
}
აქ, ველი id შეიძლება მინიჭებული იყოს მხოლოდ ერთხელ — ობიექტის შექმნის დროს. ამის შემდეგ, id-ს შეცვლის მცდელობა გამოიწვევს კომპილაციის შეცდომას.
შეცვლადობაშარ ობიექტებისთვის, ჩვეულებრივ, ყველა ველი final-ად იქცევა და სეტერები არ მიეწოდება, რაც ეხმარება კლასის უსაფრთხოების და წინასწარ განსაზღვრის უზრუნველყოფაში.