Overloading: differenze tra le versioni

==Overloading del costruttore e dei metodi delle classi==
Ecco alcuni esempi di sovraccarico di un costruttore Persona e un metodo "Rubrica.Inserisci", in linguaggio [[Visual Basic]] (è omessa la dichiarazione di un [[Tipo di dato|tipo enumerativo]] "Sesso" di valore "Maschio/Femmina" e di alcune implementazioni)
<source lang="vb">
<nowiki>
Class Persona
 
Private _nome As String
Private _cognome As String
Private _nascita As Date
Private _sex As Sesso
 
Public ReadOnly Property NomeCompleto() As String
 
Public Overloads Sub New(ByVal nome As String, ByVal cognome As String, ByVal nascita As Date, ByVal sex As Sesso)
_nome = nome
_cognome = cognome
_nascita = nascita
_sex = sex
End Sub
 
Public Overloads Sub New(ByVal AltraPersona As Persona)
_nome = altrapersona._nome
_cognome = altrapersona._cognome
_nascita = altrapersona._nascita
_sex = altrapersona._sex
End Sub
End Class
 
 
Class Rubrica
[...]
Public Overloads Sub Inserisci(ByVal Nome As Stirng, ByVal Cognome As String)
Public Overloads Sub Inserisci(ByVal Item As Persona)
End Class
</nowikisource>
 
In questo modo è possibile inizializzare un'[[Istanza (informatica)|istanza]] della classe Persona sia fornendo nome e cognome come stringa che copiandoli da un'altra istanza di Persona.
3 252

contributi