Junior — Middle
Tudja magyarázni, hogy mit értünk bővítési módszer alatt a programozásban?
sobes.tech MI
Válasz az MI-től
A C#-ban az extension metódus egy módja annak, hogy egy meglévő típushoz új metódust adjunk hozzá anélkül, hogy módosítanánk a típus forráskódját, és anélkül, hogy új örökölt osztályt hoznánk létre. Ezek a metódusok statikusak egy statikus osztályban, és az első paramétert this kulcsszóval jelöljük, jelezve, hogy melyik típushoz adódik hozzá a metódus.
Ez akkor hasznos, ha olyan osztályok funkcionalitását szeretnénk bővíteni, amelyekhez nincs hozzáférésünk a módosításhoz.
Példa egy extension metódusra:
public static class StringExtensions
{
public static bool IsNullOrEmpty(this string str)
{
return string.IsNullOrEmpty(str);
}
}
// Használat:
string s = null;
bool result = s.IsNullOrEmpty();
Itt az IsNullOrEmpty úgy néz ki, mint egy példány metódus a stringen, pedig valójában egy statikus extension metódus.