Sobes.tech
Junior — Middle

როგორ შეიძლება განახორციელოთ შეუცვლელი ობიექტი პროგრამირებაში?

sobes.tech AI

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

არამოყვანილი ობიექტი (immutable object) არის ობიექტი, რომლის მდგომარეობა ვერ იცვლება მისი შექმნის შემდეგ. Java-ში ეს რამდენიმე გზით მიიღწევა:

  1. კლასის final-ის გამოცხადება — რათა მას არ შეუძლია მემკვიდრეობა და მისი ქცევის შეცვლა.
  2. ყველა ველი იყოს private და final — რათა მისი მნიშვნელობა ვერ შეიცვალოს ინიციალიზაციის შემდეგ.
  3. Setter-ების არ მიწოდება — მხოლოდ getter-ები ველების მისაწვდომად.
  4. ყველა ველი ინიციალიზება კონსტრუქტორით.
  5. თუ ველი არის რეფერენცული ტიპი, უზრუნველყოს მისი უცვლელობა (მაგალითად, გამოიყენოს უცვლელი კოლექციები ან შექმნას ობიექტების ასლები გადაცემისას).

მაგალითი:

public final class Person {
    private final String name;
    private final int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}

ამ გზით, Person ობიექტის შექმნის შემდეგ მისი მდგომარეობა შეცვლილი არ იქნება.

როგორ შეიძლება განახორციელოთ შეუცვლელი ობიექტი… - sobes.tech