Udostępnij za pośrednictwem


Module — Instrukcja

Deklaruje nazwę modułu i wprowadza definicji zmiennych, właściwości, zdarzenia i procedury, które składa się z modułu.

[ <attributelist> ] [ accessmodifier ]  Module name
    [ statements ]
End Module

Części

Uwagi

A Module instrukcji określa typ odwołania, dostępna przez cały jego obszar nazw.A Moduł (czasami nazywany moduł standardowy)jest podobna do klasy, ale niektóre ważne wyróżnienia.Każdy moduł ma dokładnie jedno wystąpienie i nie musi zostać utworzony lub przypisana do zmiennej.Moduły nie obsługuje dziedziczenia lub implementować interfejsów.Należy zauważyć, że moduł nie jest typu w tym sensie, że klasy lub struktury — nie można zadeklarować elementu programowania ma typ danych w module.

Można użyć Module tylko na poziomie obszaru nazw.Oznacza to, kontekście deklaracji moduł musi być plikiem źródłowym lub obszaru nazw i nie może być klasy, struktury, moduł, interfejs, procedury lub bloku.Nie można zagnieździć moduł, w terminie inny moduł lub dowolnego typu.Aby uzyskać więcej informacji, zobacz Kontekst deklaracji i domyślne poziomy dostępu (Visual Basic).

Moduł ma ten sam okres istnienia jako program.Ponieważ jego członkowie są wszystkie Shared, mają one również okres istnienia klucza równy program.

Domyślnie moduły Friend (Visual Basic) dostępu.Można dostosować ich poziomy dostępu z modyfikatorów dostępu.Aby uzyskać więcej informacji, zobacz Poziomy dostępu w Visual Basic.

Wszyscy członkowie moduł są niejawnie Shared.

Klas i moduły

Elementy te mają wiele podobieństw, ale istnieją pewne ważne różnice.

  • W terminologii. Poprzednie wersje programu Visual Basic rozpoznaje dwa typy modułów: moduły klas (pliki .cls) i moduły standardowe (pliki .bas).Bieżąca wersja wywołuje te klasy i modułów, odpowiednio.

  • Członkowie udostępnionego. Można kontrolować, czy udostępniony jest członkiem klasy lub wystąpienia członka.

  • Orientacja obiektowa. Klasy są zorientowane obiektowo, ale nie są moduły.Aby tylko klasy można utworzyć wystąpienia jako obiekty.Aby uzyskać więcej informacji, zobacz Obiekty i klasy w Visual Basic.

Zasady

  • Modyfikatory. Wszystkie elementy modułu są niejawnie Shared (Visual Basic).Nie można użyć Shared słowa kluczowego podczas deklarowania członka, a nie można zmieniać stan udostępnionego któregokolwiek członka.

  • Dziedziczenie. Moduł nie może dziedziczyć z dowolnego typu innego niż Object, z których wszystkie moduły dziedziczyć.W szczególności jeden moduł nie może dziedziczyć z innym.

    Nie można użyć Inherits — Instrukcja w definicji modułu, nawet określić Object.

  • Właściwość Default. Wszystkie domyślne właściwości nie można definiować w module.Aby uzyskać więcej informacji, zobacz Default (Visual Basic).

Zachowanie

  • Poziom dostępu. W module można zadeklarować każdego członka, z poziomu programu access.Domyślnie członkowie moduł Public (Visual Basic) dostępu z wyjątkiem zmiennych i stałych, które domyślnie Private (Visual Basic) dostępu.Moduł zastrzegł dostęp więcej niż jednego ze swoich członków, pierwszeństwo ma poziom dostępu określonego modułu.

  • Zakres. Moduł jest w zasięgu całej jego obszar nazw.

    Zakres każdego członka moduł jest całego modułu.Należy zauważyć, że wszystkie elementy poddane typu promocji, co powoduje, że ich zakres, należy promować do obszaru nazw zawierających modułu.Aby uzyskać więcej informacji, zobacz Promocja typu (Visual Basic).

  • Kwalifikacji. Mamy wiele modułów w projekcie i można zadeklarować członków o tej samej nazwie w dwóch lub więcej modułów.Jednakże jeżeli odwołanie jest z zewnątrz tego modułu muszą kwalifikować się każde odniesienie do takiego członka z nazwą odpowiedniego modułu.Aby uzyskać więcej informacji, zobacz Odwołania do elementów zadeklarowanych (Visual Basic).

Przykład

Public Module thisModule
    Sub Main()
        Dim userName As String = InputBox("What is your name?")
        MsgBox("User name is" & userName)
    End Sub 
    ' Insert variable, property, procedure, and event declarations. 
End Module

Zobacz też

Informacje

Class — Instrukcja (Visual Basic)

Namespace — Instrukcja

Structure — Instrukcja

Interface — Instrukcja (Visual Basic)

Property — Instrukcja

Koncepcje

Promocja typu (Visual Basic)