Přetížení (Visual Basic)
Určuje, že vlastnost nebo procedura znovu deklaruje jednu nebo více existujících vlastností nebo procedur se stejným názvem.
Poznámky
Přetížení je postup poskytování více než jedné definice pro danou vlastnost nebo název procedury ve stejném oboru. Redeclaring a property or procedure with a different signature is sometimes called hiding by signature.
Pravidla
Kontext deklarace. Můžete použít pouze
Overloadsv příkazu deklarace vlastnosti nebo procedury.Kombinované modifikátory. V deklaraci
Overloadsstejné procedury nelze zadat hodnotu společně se stíny.Požadované rozdíly. Podpis v této deklaraci se musí lišit od podpisu každé vlastnosti nebo procedury, kterou přetíží. Podpis se skládá z názvu vlastnosti nebo procedury společně s následujícím:
počet parametrů
pořadí parametrů
datové typy parametrů
počet parametrů typu (pro obecnou proceduru)
návratový typ (pouze pro proceduru operátoru převodu)
Všechna přetížení musí mít stejný název, ale každé z nich se musí lišit od ostatních v jednom nebo více předchozích ohledech. To umožňuje kompilátoru rozlišit, která verze se má použít, když kód volá vlastnost nebo proceduru.
Nepovolené rozdíly. Změna jedné nebo více z následujících možností není platná pro přetížení vlastnosti nebo procedury, protože nejsou součástí podpisu:
Jestli vrátí hodnotu (pro proceduru)
datový typ návratové hodnoty (s výjimkou operátoru převodu)
Názvy parametrů nebo parametrů typu
omezení parametrů typu (pro obecnou proceduru)
Klíčová slova modifikátoru parametrů (například
ByRefneboOptional)klíčová slova modifikátoru vlastnosti nebo procedury (například
PublicneboShared)
Volitelný modifikátor. Modifikátor není muset použít, pokud definujete více přetížených vlastností nebo procedur
Overloadsve stejné třídě. Pokud však použijeteOverloadsv jedné z deklarací, je nutné jej použít ve všech z nich.Stínování a přetížení.
Overloadslze také použít k stínování existujícího členu nebo sady přetížených členů v základní třídě. Pokud použijete tímto způsobem, deklarujete vlastnost nebo metodu se stejným názvem a seznamem parametrů jako člen základní třídy a nezadáteOverloadsklíčovéShadowsslovo .
Pokud použijete , kompilátor implicitně přidá , aby rozhraní API knihovny fungovala Overrides Overloads s jazykem C# snadněji.
OverloadsModifikátor lze použít v těchto kontextech: