Junior
Kas yra plėtros metodas C#?
sobes.tech AI
Atsakymas iš AI
Plėtros metodas (Extension Method) yra statinis metodas, kurį galima iškviesti taip, tarsi jis būtų plėtinio tipo metodas, nors iš tikrųjų jis apibrėžtas už šio tipo ribų.
Pagrindinės savybės:
- Tai yra statinis metodas, deklaruotas statinėje klasėje.
- Pirmasis plėtros metodo parametras turi būti pažymėtas raktažodžiu
thisir nurodyti tipą, kurį norite išplėsti. - Plėtros metodai neturi prieigos prie privačių ir apsaugotų plėtinio tipo narių.
- Jie leidžia pridėti funkcionalumą prie esamų tipų be jų šaltinio kodo keitimo ar paveldėjimo naudojimo.
Pavyzdys, kaip sukurti ir naudoti:
-
Apibrėžti statinį klasę ir plėtros metodą:
public static class StringExtensions // Statinė klasė { public static string ToTitleCase(this string input) // Plėtros metodas tipui string { if (string.IsNullOrEmpty(input)) { return input; } // Paprasta logika konvertuoti į Title Case return System.Globalization.CultureInfo.CurrentCulture.TextInfo.ToTitleCase(input.ToLower()); } } -
Naudoti plėtros metodą:
string myString = "hello world"; string titleCaseString = myString.ToTitleCase(); // Kvietimas kaip įprasto string metodo // titleCaseString dabar turi reikšmę "Hello World"