Sobes.tech
Junior — Middle

Կարող եք տալ օրինակ, թե ինչպես C#-ի օգնությամբ կարող եք ավելացնել նոր ֆունկցիաներ կամ ընդլայնել առկա տիպի հնարավորությունները?

sobes.tech AI

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

В C# для добавления новых функций к существующим типам часто используют методы расширения (extension methods). Это статические методы в статическом классе, которые позволяют вызывать их как будто они являются методами самого типа.

Пример: добавим метод, который возвращает количество слов в строке:

public static class StringExtensions
{
    public static int WordCount(this string str)
    {
        if (string.IsNullOrWhiteSpace(str))
            return 0;
        return str.Split(new[] {' ', '\t', '\n'}, StringSplitOptions.RemoveEmptyEntries).Length;
    }
}

// Использование:
string text = "Привет, мир!";
int count = text.WordCount(); // count будет 2

Таким образом, можно расширять функциональность любых типов, не изменяя их исходный код.