Overloading in Visual Basic
Il linguaggio Visual Basic ammette l'overloading dei metodi di una classe.
Cos'é l'overloading? In una classe posso definire due metodi con lo stesso nome ma diversi argomenti. A seconda di come viene istanziato, la classe richiama l'uno o l'altro.
Un esempio pratico
Creo una classe con tre metodi chiamati entrambi "prova".
- Public Class Esempio
- Public Sub Prova()
- Console.Write("1")
- End Sub
- Public Sub Prova(ByVal x As String)
- Console.Write("2")
- End Sub
- Public Sub Prova(ByVal x As Integer)
- Console.Write("3")
- End Sub
- End Class
Il primo metodo non ha argomenti, il secondo riceve come argomento una stringa e il terzo un numero intero.
Poi istanzio un oggetto nella classe
Dim oggetto As New Esempio()
Quando richiamo il metodo senza argomenti
oggetto.Prova()
la classe esegue il primo metodo e restituisce "1"
1
Quando richiamo il metodo usando una stringa come argomento
oggetto.Prova("Andrea")
la classe esegue il secondio metodo scrivendo "2"
2
Quando richiamo il metodo usando un numero intero come argomento
oggetto.Prova(2019)
la classe esegue il terzo metodo scrivendo "3"
3
E' un semplice esempio pratico di overloading in Visual Basic.
E così via.