Overloads (Visual Basic)
Specifica che una proprietà o una routine ridichiara una o più proprietà o routine esistenti con lo stesso nome.
Osservazioni:
Per overload si intende la pratica di fornire più definizioni per un determinato nome di proprietà o di routine nello stesso ambito. La nuova definizione di una proprietà o di una routine con una firma diversa viene talvolta chiamata nascondere con la firma.
Regole
Contesto della dichiarazione. È possibile usare
Overloads
solo in un'istruzione per la dichiarazione di proprietà o routine.Modificatori combinati. Non è possibile specificare
Overloads
insieme a Shadows nella stessa dichiarazione di routine.Differenze necessarie. La firma in questa dichiarazione deve essere diversa dalla firma di tutte le proprietà o routine di cui esegue l'overload. La firma comprende il nome della proprietà o della routine e gli elementi seguenti:
numero dei parametri
ordine dei parametri
tipi di dati dei parametri
numero dei parametri di tipo (per una routine generica)
tipo restituito (solo per una routine di operatore di conversione)
Tutti gli overload devono avere lo stesso nome, ma ognuno deve essere diverso da tutti gli altri per uno o più elementi tra quelli elencati in precedenza. Questo consente al compilatore di distinguere la versione da usare quando il codice chiama la proprietà o la routine.
Differenze non consentite. Poiché gli elementi riportati di seguito non fanno parte della firma, la relativa modifica non è valida per l'overload di una proprietà o di una routine:
la capacità di restituire un valore (per una routine)
il tipo di dati del valore restituito (ad eccezione di un operatore di conversione)
i nomi dei parametri o dei parametri di tipo
i vincoli definiti sui parametri di tipo (per una routine generica)
le parole chiave di modificatori di parametro (ad esempio
ByRef
oOptional
)e parole chiave di modificatori di proprietà o di routine (ad esempio
Public
oShared
)
Modificatore facoltativo. Non è necessario usare il modificatore
Overloads
quando si definiscono più proprietà o routine in overload nella medesima classe. Se tuttavia si usaOverloads
in una dichiarazione, è necessario usarlo in tutte.Shadowing e overload. Si può usare
Overloads
anche per nascondere un membro esistente o un insieme di membri in overload di una classe base. Quando si usaOverloads
a questo scopo, è necessario dichiarare la proprietà o il metodo con lo stesso nome e lo stesso elenco di parametri del membro della classe base, senza specificare la parola chiaveShadows
.
Se si usa Overrides
, il compilatore aggiunge implicitamente Overloads
in modo che le API della libreria funzionino più facilmente con C#.
Il modificatore Overloads
può essere usato nei contesti seguenti: