Junior
Mi az az extension metódus a C#-ban?
sobes.tech MI
Válasz az MI-től
A kiterjesztési módszer (Extension Method) egy statikus módszer, amely úgy hívható meg, mintha a bővített típus módszere lenne, bár valójában a típuson kívül van definiálva.
Fő jellemzők:
- Egy statikus osztályban deklarált statikus módszer.
- A kiterjesztési módszer első paramétere
thiskulcsszóval van megjelölve, és a bővíteni kívánt típusra utal. - A kiterjesztési módszerek nem férnek hozzá a bővített típus privát és védett tagjaihoz.
- Lehetővé teszik meglévő típusok funkcionalitásának hozzáadását anélkül, hogy módosítanánk a forráskódjukat vagy öröklődést használnánk.
Példa létrehozására és használatára:
-
Egy statikus osztály és egy kiterjesztési módszer meghatározása:
public static class StringExtensions // Statikus osztály { public static string ToTitleCase(this string input) // Kiterjesztési módszer a string típushoz { if (string.IsNullOrEmpty(input)) { return input; } // Egyszerű logika a Title Case-re való átalakításhoz return System.Globalization.CultureInfo.CurrentCulture.TextInfo.ToTitleCase(input.ToLower()); } } -
A kiterjesztési módszer használata:
string myString = "hello world"; string titleCaseString = myString.ToTitleCase(); // Hívás, mintha egy normál string metódus lenne // A titleCaseString most "Hello World" tartalmaz