Junior — Middle
Magyarázza el, mit jelent az objektumok létrehozása, amelyek az inicializálásuk után változatlanok.
sobes.tech MI
Válasz az MI-től
Az objektumok, amelyek az inicializálásuk után nem változnak, létrehozása azt jelenti, hogy miután az objektum létrejött és mezői beállításra kerültek, az állapota nem módosítható. Ezeket az objektumokat immutable (változatlan) néven is ismert.
C#-ban ez például a következő módon érhető el:
- mezők
readonly-ként való deklarálásával; - tulajdonságoknál csak getterek, setterek nélkül;
- minden adat inicializálása a konstruktoron keresztül.
Az immutable objektumok előnyei:
- szálbiztonság további szinkronizáció nélkül.
- a kód megértésének egyszerűsítése, mivel az objektum állapota nem változik.
- kulcsként való használat kollekciókban és cache-ekben.
Példa:
public class Person
{
public string Name { get; }
public int Age { get; }
public Person(string name, int age)
{
Name = name;
Age = age;
}
}
Az Person példány létrehozása után tulajdonságai nem módosíthatók.