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 "Пётр"