Junior — Middle
Puoi spiegare cosa si intende per metodo di estensione in programmazione?
sobes.tech AI
Risposta dell'AI
Il metodo di estensione in C# è un modo per aggiungere un nuovo metodo a un tipo esistente senza modificare il codice sorgente di quel tipo e senza creare una nuova sottoclasse. Questi metodi sono dichiarati come statici in una classe statica, e il primo parametro del metodo è contrassegnato con la parola chiave this, indicando il tipo a cui si aggiunge il metodo.
È utile quando si desidera ampliare la funzionalità di classi di librerie a cui non si ha accesso per modificarle.
Esempio di metodo di estensione:
public static class StringExtensions
{
public static bool IsNullOrEmpty(this string str)
{
return string.IsNullOrEmpty(str);
}
}
// Utilizzo:
string s = null;
bool result = s.IsNullOrEmpty();
Qui, IsNullOrEmpty sembra un metodo di istanza della stringa, anche se in realtà è un metodo di estensione statico.