Sobes.tech
Junior

C# да шилтемелүү маалыматтардын түрлөрү эмнелер жана алардын өзгөчөлүктөрү кандай?

sobes.tech AI

AIден жооп

Референс түрлөрү маалыматтар объекттерге шилтемелерди сактайт. Референс түрлөрүнүн өзгөрмөлөрү, объекттин өзү жайгашкан эс тутум дарегин камтыйт.

Мүнөздөмөлөр:

  • шилтемеге өткөрүү: Бир референс түрүндөгү өзгөрмөнүн маанисин ошол эле түрдөгү башка өзгөрмөгө берүү, экөө тең бир эле объектке шилтеме кылышына алып келет.
  • эс тутумду башкаруу: Референс түрүндөгү объекттер башкарылуучу heapке жайгаштырылат. Чогулткуч автоматтык түрдө объекттерге тиешелүү эс тутумду бошотот, алардын шилтемелери калганда.
  • Дефолт мааниси: Референс түрүнүн дефолт мааниси null.
  • мурас алуу жана полиморфизм: Референс түрлөрү мурас алууну колдойт, бул класстар иерархияларын түзүүгө жана полиморфизмди колдонууга мүмкүндүк берет.
  • салыштыруу: == оператору боюнча дефолт түрдө шилтемелерди салыштырат, объекттердин мазмунун эмес.

мисалдар:

  • Класстар (class)
  • Интерфейстер (interface)
  • Делегаттар (delegate)
  • Масивдер (array)
  • Тексттер (string) (эгерде string өзгөрүлбөс референс түрү)
// Референс түрүнүн мисалы Class1
public class Class1
{
    public int Value { get; set; }
}

// Class1нин мисалы түзүү
Class1 obj1 = new Class1 { Value = 10 };

// шилтемени берүү
Class1 obj2 = obj1;

// маанини өзгөртүү, бул obj1-ге да таасир этет
obj2.Value = 20;

// Азыр, obj1.Value 20
System.Console.WriteLine(obj1.Value);