Sdílet prostřednictvím


Partial (Visual Basic)

Označuje, že deklarace typu je částečnou definicí typu.

Definici typu můžete rozdělit mezi několik deklarací pomocí klíčového Partial slova. V mnoha různých zdrojových souborech můžete použít libovolný počet částečných deklarací. Všechny deklarace však musí být ve stejném sestavení a stejném oboru názvů.

Poznámka:

Visual Basic podporuje částečné metody, které jsou obvykle implementovány v částečných třídách. Další informace naleznete v části Částečné metody a dílčí příkaz.

Syntaxe

[ <attrlist> ] [ accessmodifier ] [ Shadows ] [ MustInherit | NotInheritable ] _  
Partial { Class | Structure | Interface | Module } name [ (Of typelist) ]  
    [ Inherits classname ]  
    [ Implements interfacenames ]  
    [ variabledeclarations ]  
    [ proceduredeclarations ]  
{ End Class | End Structure }  

Součástky

Pojem definice
attrlist Nepovinné. Seznam atributů, které se vztahují na tento typ Seznam atributů musíte uzavřít do úhlových závorek (< >).
accessmodifier Nepovinné. Určuje, jaký kód má přístup k tomuto typu. Viz úrovně Accessu v jazyce Visual Basic.
Shadows Nepovinné. Podívejte se na stíny.
MustInherit Nepovinné. Viz MustInherit.
NotInheritable Nepovinné. Viz NotInheritable.
name Povinný: Název tohoto typu Musí odpovídat názvu definovanému ve všech ostatních částečných deklaracích stejného typu.
Of Nepovinné. Určuje, že se jedná o obecný typ. Viz obecné typy v jazyce Visual Basic.
typelist Vyžaduje se, pokud používáte Viz seznam typů.
Inherits Nepovinné. Viz Příkaz Zdědědí.
classname Vyžaduje se, pokud používáte Inherits. Název třídy nebo rozhraní, ze které tato třída odvozuje.
Implements Nepovinné. Viz Implements – příkaz.
interfacenames Vyžaduje se, pokud používáte Implements. Názvy rozhraní, která tento typ implementuje.
variabledeclarations Nepovinné. Příkazy, které deklarují další proměnné a události pro typ.
proceduredeclarations Nepovinné. Příkazy, které deklarují a definují další procedury pro typ.
End Class nebo End Structure Ukončí tuto částečnou Class nebo Structure definici.

Poznámky

Visual Basic používá definice částečné třídy k oddělení generovaného kódu od uživatelem vytvořeného kódu v samostatných zdrojových souborech. Například Windows Form Designer definuje částečné třídy pro ovládací prvky, jako Formje . V těchto ovládacích prvcích byste neměli upravovat vygenerovaný kód.

Všechna pravidla pro vytváření tříd, struktur, rozhraní a modulů, například pro použití a dědičnost modifikátoru, se použijí při vytváření částečného typu.

Osvědčené postupy

  • Za normálních okolností byste neměli rozdělit vývoj jednoho typu na dvě nebo více deklarací. Proto ve většině případů nepotřebujete Partial klíčové slovo.

  • Pro čitelnost by každá částečná deklarace typu měla obsahovat Partial klíčové slovo. Kompilátor umožňuje maximálně jednu částečnou deklaraci vynechat klíčové slovo; pokud ho dva nebo více vynechá, kompilátor signalizuje chybu.

Chování

  • Unie prohlášení. Kompilátor považuje typ za sjednocení všech jeho částečných deklarací. Každý modifikátor z každé částečné definice platí pro celý typ a každý člen z každé částečné definice je k dispozici pro celý typ.

  • U částečných typů v modulech není povoleno povýšení typu. Pokud je částečná definice uvnitř modulu, povýšení typu tohoto typu se automaticky porazí. V takovém případě může sada částečných definic způsobit neočekávané výsledky a dokonce chyby kompilátoru. Další informace naleznete v tématu Zvýšení úrovně typu.

    Kompilátor sloučí částečné definice pouze v případě, že jsou jejich plně kvalifikované cesty identické.

Klíčové Partial slovo lze použít v těchto kontextech:

Příkaz Class

Příkaz Structure

Příklad

Následující příklad rozdělí definici třídy sampleClass na dvě deklarace, z nichž každá definuje jiný Sub postup.

Partial Public Class sampleClass
    Public Sub sub1()
    End Sub
End Class
Partial Public Class sampleClass
    Public Sub sub2()
    End Sub
End Class

Dvě částečné definice v předchozím příkladu můžou být ve stejném zdrojovém souboru nebo ve dvou různých zdrojových souborech.

Viz také