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); // "Пётр" чыгат