Junior — Middle
Můžete vysvětlit, co se rozumí metodou rozšíření v programování?
sobes.tech AI
Odpověď od AI
Metoda rozšíření v C# je způsob, jak přidat novou metodu k existujícímu typu bez změny jeho zdrojového kódu a bez vytvoření nového potomka. Tyto metody jsou deklarovány jako statické ve statické třídě a první parametr metody je označen klíčovým slovem this, což určuje typ, ke kterému je metoda přidávána.
Je to užitečné, když je třeba rozšířit funkčnost tříd z knihoven, ke kterým nemáme přístup ke změně.
Příklad metody rozšíření:
public static class StringExtensions
{
public static bool IsNullOrEmpty(this string str)
{
return string.IsNullOrEmpty(str);
}
}
// Použití:
string s = null;
bool result = s.IsNullOrEmpty();
Zde IsNullOrEmpty vypadá jako metoda instance řetězce, ačkoliv ve skutečnosti je to statická metoda rozšíření.