Sobes.tech
Junior — Middle

Ներկայացրեք անփոփոխ (immutable) դասերի կոնցեպցիան ծրագրավորման մեջ և թե ինչպես են դրանք օգտագործվում։

sobes.tech AI

Պատասխան AI-ից

Անփոփոխ (immutable) դասերը այն դասերն են, որոնց օբյեկտները չեն կարող փոխվել ստեղծելուց հետո։ Բոլոր դաշտերը սովորաբար հայտարարվում են որպես final և inicilize են կոնստրուկտորում։ Այս մոտեցումը ապահովում է թելերի անվտանգություն և կանխատեսելի վարքագիծ։

Java-ում անփոփոխ դասի օրինակ՝

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;
    }
}

Անփոփոխ օբյեկտները օգտագործվում են՝

  • Հետախուզման և թեստավորման պարզեցման համար
  • Անվտանգ աշխատելու բազմատելային միջավայրում առանց սինխրոնիզացիայի
  • Հավատարիմ բանալիներ ստեղծելու հավաքածուներում (օրինակ՝ HashMap-ում)։