Sobes.tech
Junior

Kas ir paplašināšanas metode C#?

sobes.tech AI

Atbilde no AI

Paplašināšanas metode (Extension Method) ir statiska metode, kuru var izsaukt tā, it kā tā būtu paplašināmā tipa metode, lai gan patiesībā tā ir definēta ārpus šī tipa.

Galvenās īpašības:

  • Tā ir statiska metode, kas deklarēta statiskā klasē.
  • Paplašināšanas metodes pirmajam parametram jābūt atzīmētam ar atslēgvārdu this un jānorāda uz tipu, kuru vēlaties paplašināt.
  • Paplašināšanas metodēm nav piekļuves privātajiem un aizsargātajiem paplašināmā tipa locekļiem.
  • Tās ļauj pievienot funkcionalitāti esošiem tipiem bez to avota koda maiņas vai mantošanas izmantošanas.

Piemērs, kā izveidot un izmantot:

  1. Definēt statisku klasi un paplašināšanas metodi:

    public static class StringExtensions // Statiska klase
    {
        public static string ToTitleCase(this string input) // Paplašināšanas metode tipam string
        {
            if (string.IsNullOrEmpty(input))
            {
                return input;
            }
            // Vienkārša loģika pārvēršanai Title Case
            return System.Globalization.CultureInfo.CurrentCulture.TextInfo.ToTitleCase(input.ToLower());
        }
    }
    
  2. Izmantot paplašināšanas metodi:

    string myString = "hello world";
    string titleCaseString = myString.ToTitleCase(); // Izsaukums kā parasta string metode
    // titleCaseString tagad satur "Hello World"