Sobes.tech
Junior — Middle

Puteți explica ce înseamnă o clasă imutabilă în programare?

sobes.tech AI

Răspuns de la AI

O clasă imuabilă este o clasă ale cărei instanțe nu pot fi modificate după crearea lor. Toate câmpurile unui astfel de obiect sunt de obicei declarate ca final (în Java) și sunt inițializate doar în constructor. Acest lucru garantează că starea obiectului va rămâne constantă pe toată durata vieții sale.

Avantajele claselor imuabile:

  • Siguranță în fire fără sincronizare suplimentară.
  • Ușurință în înțelegere și depanare.
  • Utilizare ca chei în colecții, de exemplu, în HashMap.

Exemplu de clasă imuabilă în 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;
    }
}

Aici, clasa Person nu permite modificarea numelui sau vârstei după crearea obiectului.