Rozhraní prohlášení (Visual Basic)
Deklaruje název rozhraní a zavádí definice členů, které zahrnuje rozhraní.
[ <attributelist> ] [ accessmodifier ] [ Shadows ] _
Interface name [ ( Of typelist ) ]
[ Inherits interfacenames ]
[ [ modifiers ] Property membername ]
[ [ modifiers ] Function membername ]
[ [ modifiers ] Sub membername ]
[ [ modifiers ] Event membername ]
[ [ modifiers ] Interface membername ]
[ [ modifiers ] Class membername ]
[ [ modifiers ] Structure membername ]
End Interface
Části
Termín |
Definice |
attributelist |
Nepovinné.Viz seznam atributů. |
accessmodifier |
Nepovinné.Může být jeden z následujících: Viz téma Úrovně přístupu v jazyce Visual Basic. |
Shadows |
Nepovinné.Viz stíny. |
name |
Povinné.Název tohoto rozhraní.Viz téma Deklarovaný názvy prvků (Visual Basic). |
Of |
Nepovinné.Určuje, že toto je obecné rozhraní. |
typelist |
Požadováno, pokud použijete Klauzule (Visual Basic) klíčové slovo.Seznam parametrů typu tohoto rozhraní.Volitelně každý parametr typu lze deklarovat varianty pomocí In a Out generic modifikátory.Viz seznamu Typ. |
Inherits |
Nepovinné.Označuje, že toto rozhraní dědí atributy a členy rozhraní nebo jiného rozhraní.Viz téma Dědí prohlášení. |
interfacenames |
Požadováno, pokud použijete Inherits prohlášení.Názvy rozhraní, z něhož pochází toto rozhraní. |
modifiers |
Nepovinné.Příslušných parametrů pro člen rozhraní definované. |
Property |
Nepovinné.Vlastnost, která je členem rozhraní definuje. |
Function |
Nepovinné.Definuje Function postup, který je součástí rozhraní. |
Sub |
Nepovinné.Definuje Sub postup, který je součástí rozhraní. |
Event |
Nepovinné.Definuje událost, která je členem rozhraní. |
Interface |
Nepovinné.Definuje rozhraní, která je vnořená uvnitř tohoto rozhraní.Definice vnořené rozhraní musí ukončit s End Interface prohlášení. |
Class |
Nepovinné.Definuje třídu, která je členem rozhraní.Definice třídy člen musí ukončit s End Class prohlášení. |
Structure |
Nepovinné.Definuje strukturu, která je členem rozhraní.Definice struktury členské musí ukončit s End Structure prohlášení. |
membername |
Povinné pro každou vlastnost, postup, událostí, rozhraní, třídy nebo struktury definované jako člen rozhraní.Název člena. |
End Interface |
Ukončí Interface definice. |
Poznámky
Rozhraní definuje sadu členů, jako například vlastnosti a postupy, které třídy a struktur implementovat.Rozhraní definuje podpisy členů a není jejich vnitřní činnost.
Třídy nebo struktury implementuje rozhraní zadáním kódu pro každého člena definované rozhraní.Nakonec aplikace vytvoří instanci této třídy nebo struktury, objekt existuje a spustí v paměti.Další informace naleznete v tématu Objekty a třídy v jazyce Visual Basic a Rozhraní (Visual Basic).
Můžete použít Interface pouze na úrovni oboru názvů nebo modulu.To znamená prohlášení kontextu pro rozhraní musí být zdrojový soubor, obor názvů, třídu, strukturu, modulu nebo rozhraní a nemůže být postup nebo blokovat.Další informace naleznete v tématu Prohlášení kontextů a úrovně přístupu výchozí (Visual Basic).
Výchozí rozhraní Přítel (Visual Basic) přístup.Můžete nastavit jejich úrovně přístupu s modifikátory přístupu.Další informace naleznete v tématu Úrovně přístupu v jazyce Visual Basic.
Pravidla
Vnoření rozhraní. Můžete definovat v rámci jiného jedno rozhraní.Vnější rozhraní se nazývá obsahující rozhraní, se nazývá vnitřní rozhraní vnořené rozhraní.
Deklarace člena. Když deklarujete jako člen rozhraní vlastnost nebo proceduru, definování pouze podpis vlastnost nebo proceduru.To zahrnuje typ prvku (vlastnost nebo proceduru), její parametry a typy parametrů a jejího typu návratu.Z tohoto důvodu definice členu používá pouze jeden řádek kódu a ukončující příkazy, například End Function nebo End Property nejsou platné v rozhraní.
Naopak při definování výčet nebo strukturu, nebo vnořené třídy nebo rozhraní, je nutné zahrnout jejich členové data.
Modifikátory člena. Při definování členy v modulu nelze použít žádné modifikátory přístupu ani můžete určit Sdílené (Visual Basic) nebo jakýkoli postup modifikátor, s výjimkou Přetížení (Visual Basic).U každého člena můžete deklarovat Stíny (Visual Basic), a pomocí Výchozí (Visual Basic) při definování vlastností, stejně jako Jen pro čtení (Visual Basic) nebo Typu WriteOnly (Visual Basic).
Dědičnost. Pokud používá rozhraní Dědí prohlášení, můžete zadat jeden nebo více základních rozhraních.Dvě rozhraní může dědit i v případě, že každý člen se stejným názvem definovat.Pokud tak učiníte, musí kód prováděcí určete člen implementuje pomocí název kvalifikace.
Rozhraní nemůže dědit od jiného rozhraní s více restriktivní úroveň přístupu.Například Public nelze zdědit rozhraní Friend rozhraní.
Rozhraní nemůže dědit od ní vnořené rozhraní.
Implementace. Když používá třídy Klauzule implements (Visual Basic) prohlášení implementovat toto rozhraní je musí implementovat každý člen definované v rámci rozhraní.Navíc každý podpis v prováděcích kódu musí přesně odpovídat definované v tomto rozhraní odpovídající podpis.Název člena v prováděcích kódu však nemá odpovídající název členu definované v rozhraní.
Třída je provádění procedury, jej nelze určit postup jako Shared.
Výchozí vlastnost. Rozhraní můžete zadat maximálně jednu vlastnost jako jeho výchozí vlastnost, které lze odkazovat bez použití názvu vlastnosti.Určit tuto vlastnost s jejím Výchozí (Visual Basic) modifikátor.
Všimněte si, že to znamená pouze v případě, že žádný dědí můžete definovat rozhraní výchozí vlastnost.
Chování
Úroveň přístupu. Implicitně mají všechny členy rozhraní Veřejné (Visual Basic) přístup.Při definování člen nelze použít žádné modifikátor přístupu.Implementace rozhraní třídy však můžete deklarovat úroveň přístupu pro každého člena implementováno.
Pokud přiřazujete instanci třídy proměnné, úroveň přístupu svých členů závisí na zda datový typ proměnné je základní rozhraní nebo prováděcí třídy.To ukazuje následující příklad.
Public Interface IDemo Sub doSomething() End Interface Public Class implementIDemo Implements IDemo Private Sub doSomething() Implements IDemo.doSomething End Sub End Class Dim varAsInterface As IDemo = New implementIDemo() Dim varAsClass As implementIDemo = New implementIDemo()
Pokud přístup členů třídy prostřednictvím varAsInterface, všichni mají přístup veřejnosti.Však pokud přístup členů prostřednictvím varAsClass, Sub postup doSomething má soukromý přístup.
Obor. Rozhraní je v oboru v celém oboru názvů, třídu, strukturu nebo modulu.
Rozsah každého člena rozhraní je celé rozhraní.
Doba života. Rozhraní sám nemá životnost ani provést jeho členů.Pokud třída implementuje rozhraní a objekt je vytvořen jako instance, že třída objektu má životnost v rámci aplikace, ve kterém je spuštěna.Další informace naleznete v části "Doba trvání" v Příkaz class (Visual Basic).
Příklad
V následujícím příkladu Interface příkaz definovat rozhraní s názvem thisInterface, musí být prováděna s Property prohlášení a Function prohlášení.
Public Interface thisInterface
Property thisProp(ByVal thisStr As String) As Char
Function thisFunc(ByVal thisInt As Integer) As Integer
End Interface
Všimněte si, že Property a Function prohlášení nezavedou bloky s End Property a End Function v rámci rozhraní.Rozhraní definuje podpisy svých členů.Plně Property a Function se bloky v třídy, která implementuje thisInterface.
Viz také
Referenční dokumentace
V (Generic modifikátor) (Visual Basic)
Mimo (Generic modifikátor) (Visual Basic)
Koncepty
Obecné typy jazyka Visual Basic (Visual Basic)
Odchylka v obecné rozhraní (C# a Visual Basic)