Proprietăți — RexDac Academy

RexDac AcademyNote tehnice · Ajută să ai câteva noțiuni de bază
0%Note publicate citite · pe acest dispozitiv

Nivelul 4 — Clase

Proprietăți

Note originale de SunDiaL · Vezi sursa în engleză

O proprietate este o combinație între un câmp și o metodă. Proprietățile sunt o facilitate C# concepută pentru a înlocui getterele și setterele.

În general, proprietățile se folosesc pentru câmpurile publice, indiferent dacă există sau nu logică de citire/scriere.

Definirea unei proprietăți

Există mai multe moduri de a defini o proprietate.

Forma explicită completă

class ExampleClass
{
	private int x;
	public int X 
	{
		get
		{
			return this.x;
		}
		set
		{
			this.x = value;
		}
	}
}

Forma cu expresii lambda

class ExampleClass
{
	private int x;
	public int X 
	{
		get => this.x;
		set => this.x = value;
	}
}

Forma automată cu expresii lambda

class ExampleClass
{
	public int X 
	{
		get => field;
		set => field = value;
	}
}

Observă că acel câmp explicit a fost înlocuit cu cuvântul-cheie field.

Forma de proprietate automată

class ExampleClass
{
	public int X { get; set; }
}

Folosirea unei proprietăți

Fiind, în esență, un câmp cu funcționalități suplimentare, o folosești la fel ca pe un câmp.

class Program
{
	public void main()
	{
		ExampleClass ex = new ExampleClass();
		ex.X = 5;
	}
}