Sobes.tech
Junior — Middle

Izskaidrojiet, ko nozīmē izveidot objektus, kas pēc to inicializācijas ir nemainīgi.

sobes.tech AI

Atbilde no AI

Objektu izveide, kas ir nemainās pēc to inicializācijas, nozīmē, ka, kad objekts ir izveidots un tā lauki ir iestatīti, šī objekta stāvokli nevar mainīt. Šādus objektus sauc par immutable (nemaināmiem).

C# to sasniedz, piemēram, ar:

  • lauku deklarēšanu kā readonly;
  • īpašību bez setteriem (tikai getteriem);
  • visu datu inicializēšanu caur konstruktoru.

Nemaināmu objektu priekšrocības:

  • drošība daudzšūnu vidē bez papildu sinhronizācijas.
  • koda saprotamības vienkāršošana, jo objekta stāvoklis nemainās.
  • izmantošana kā atslēgas kolekcijās un kešos.

Piemērs:

public class Person
{
    public string Name { get; }
    public int Age { get; }

    public Person(string name, int age)
    {
        Name = name;
        Age = age;
    }
}

Pēc Person objekta izveides, tā īpašības nevar tikt mainītas.