Sobes.tech
Junior — Middle

Poți explica ce se înțelege prin metoda de extindere în programare?

sobes.tech AI

Răspuns de la AI

Metoda de extensie în C# este o modalitate de a adăuga o metodă nouă unui tip existent fără a modifica codul sursă al acestuia și fără a crea un nou subtip. Astfel de metode sunt declarate ca statice într-o clasă statică, iar primul parametru al metodei este marcat cu cuvântul cheie this, indicând tipul la care se adaugă metoda.

Este util atunci când trebuie să extinzi funcționalitatea claselor din biblioteci la care nu ai acces pentru a le modifica.

Exemplu de metodă de extensie:

public static class StringExtensions
{
    public static bool IsNullOrEmpty(this string str)
    {
        return string.IsNullOrEmpty(str);
    }
}

// Utilizare:
string s = null;
bool result = s.IsNullOrEmpty();

Aici, IsNullOrEmpty pare a fi o metodă de instanță a șirului, deși în realitate este o metodă statică de extensie.