Sobes.tech
Junior — Middle

Сиз шилтемелерди колдонгон негизги маалымат түрлөрүн атап, алардын өзгөчөлүктөрүн түшүндүрө аласызбы?

sobes.tech AI

AIден жооп

C# тилинде, шилтемелерди колдонгон негизги маалымат түрлөрү шилтемелүү түрлөр болуп саналат. Алар төмөнкүлөрдү камтыйт:

  • Класстар (class) — объекттер heapте түзүлөт, өзгөрмө объектке шилтемени сактайт.
  • Интерфейстер (interface) — өзгөрмө интерфейсти ишке ашырган объектке шилтемени сактайт.
  • Массивдер (array) — массивдер да шилтемелүү түрлөр.
  • Делегаттар (delegate) — ыкмаларга шилтемелер, да шилтемелүү түрлөр.

Шилтемелүү түрлөрдүн өзгөчөлүктөрү:

  • Өзгөрмө өзү объектти эмес, объект менен байланышкан эс тутум аймагына шилтемени сактайт.
  • Белгилөөдө, шилтеме көчүрүлөт, объект эмес.
  • Объекттер башкарылуучу heapте түзүлөт, чогултуучу эс тутумду бошотот.
  • null мааниси болушу мүмкүн, бул объектке шилтеме жоктугун билдирет.

Мисал:

class Person {
    public string Name;
}

Person p1 = new Person { Name = "Иван" };
Person p2 = p1; // p2 жана p1 бир эле объектке шилтеме кылат
p2.Name = "Пётр";
Console.WriteLine(p1.Name); // "Пётр" чыгат