Sobes.tech
Junior — Middle

Meg tudod nevezni a hivatkozásokat használó fő adattípusokat, és el tudod magyarázni azok jellemzőit?

sobes.tech MI

Válasz az MI-től

C# nyelvben azok a fő adat típusok, amelyek hivatkozásokat használnak, azok a referencia típusok. Ide tartoznak:

  • Osztályok (class) — az objektumokat a heap-en hozzák létre, a változó az objektum hivatkozását tárolja.
  • Interfészek (interface) — a változó az interfészt megvalósító objektum hivatkozását tárolja.
  • Tömbök (array) — a tömbök szintén referencia típusok.
  • Delegáltak (delegate) — metódusokra mutató hivatkozások, szintén referencia típusok.

A referencia típusok jellemzői:

  • A változó nem az objektumot, hanem a memóriaterületre mutató hivatkozást tárol.
  • Hozzárendeléskor a hivatkozás másolódik, nem az objektum.
  • Az objektumokat a kezelt heap-en hozzák létre, a szemétgyűjtő felszabadítja a memóriát.
  • Lehet null értékű, ami azt jelenti, hogy nincs hivatkozás az objektumra.

Példa:

class Person {
    public string Name;
}

Person p1 = new Person { Name = "Иван" };
Person p2 = p1; // p2 és p1 ugyanarra az objektumra mutat
p2.Name = "Пётр";
Console.WriteLine(p1.Name); // Kiírja "Пётр"