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);