Sobes.tech
Junior

Ի՞նչ է ընդլայնման մեթոդը C#-ում։

sobes.tech AI

Պատասխան AI-ից

Լրացուցիչ մեթոդը (Extension Method) հանդիսանում է ստատիկ մեթոդ, որը կարող է կոչվել այնպես, կարծես այն ընդլայնվող տիպի մեթոդն է, թեև իրականում այն սահմանված է այդ տիպից դուրս:

Հիմնական հատկանիշները՝

  • Դա ստատիկ մեթոդ է, որը հայտարարված է ստատիկ դասում:
  • Առաջին պարամետրը պետք է նշված լինի this բանալիով և ցույց տա այն տիպին, որը ցանկանում եք ընդլայնել:
  • Լրացուցիչ մեթոդները չունեն մուտք դեպի մասնավոր և պաշտպանված անդամներ ընդլայնվող տիպի:
  • Դրանք թույլ են տալիս ավելացնել ֆունկցիոնալություն գոյություն ունեցող տիպերին՝ առանց նրանց ծագող կոդը փոփոխելու կամ ժառանգության օգտագործելու:

Օրինակ ստեղծելու և օգտագործելու համար՝

  1. Ստեղծեք ստատիկ դաս և ընդլայնման մեթոդ:

    public static class StringExtensions // Ստատիկ դաս
    {
        public static string ToTitleCase(this string input) // ընդլայնման մեթոդ string տիպի համար
        {
            if (string.IsNullOrEmpty(input))
            {
                return input;
            }
            // պարզ տրամաբանություն վերածելու համար Title Case
            return System.Globalization.CultureInfo.CurrentCulture.TextInfo.ToTitleCase(input.ToLower());
        }
    }
    
  2. Օգտագործեք ընդլայնման մեթոդը՝

    string myString = "hello world";
    string titleCaseString = myString.ToTitleCase(); // Կոչ որպես սովորական string մեթոդ
    // titleCaseString այժմ պարունակում է "Hello World"