Bagikan melalui


Pernyataan Modul

Mendeklarasikan nama modul dan memperkenalkan definisi variabel, properti, peristiwa, dan prosedur yang terdiri dari modul.

Sintaks

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

Generator

attributelist
Opsional. Lihat Daftar Atribut.

accessmodifier
Opsional. Bisa jadi salah satu dari yang berikut:

Lihat Tingkat akses di Visual Basic.

name
Harus diisi. Nama modul ini. Lihat Nama Elemen yang Dideklarasikan.

statements
Opsional. Pernyataan yang menentukan variabel, properti, peristiwa, prosedur, dan jenis modul ini berlapis.

End Module
Mengakhiri definisi Module.

Keterangan

Pernyataan Module mendefinisikan jenis referensi yang tersedia di seluruh namespace layanannya. Modul (terkadang disebut modul standar) mirip dengan kelas tetapi dengan beberapa perbedaan penting. Setiap modul memiliki tepat satu instans dan tidak perlu dibuat atau ditetapkan ke variabel. Modul tidak mendukung pewarisan atau mengimplementasikan antarmuka. Perhatikan bahwa modul bukan suatu jenis dalam arti bahwa kelas atau struktur adalah - Anda tidak dapat mendeklarasikan elemen pemrograman untuk memiliki modul jenis data.

Anda hanya dapat menggunakan Module di tingkat kumpulan nama. Ini berarti konteks deklarasi untuk peristiwa harus berupa kelas, struktur, modul, atau antarmuka, dan tidak boleh berupa file sumber, kumpulan nama, prosedur, atau blok. Anda tidak dapat melapisi modul dalam modul lain, atau dalam jenis apapun. Untuk informasi selengkapnya, lihat Konteks Deklarasi dan Tingkat Akses Default.

Modul memiliki masa pakai yang sama dengan program Anda. Karena anggotanya semua Shared, mereka juga memiliki masa pakai yang sama dengan program.

Antarmuka default ke akses Teman. Anda dapat menyesuaikan tingkat aksesnya dengan pengubah akses. Untuk informasi selengkapnya, lihat Tingkat akses di Visual Basic.

Semua anggota modul secara Sharedimplisit.

Kelas dan Modul

Elemen-elemen ini memiliki banyak kesamaan, tetapi ada beberapa perbedaan penting juga.

  • Terminologi Versi Visual Basic sebelumnya mengenali dua jenis modul: modul kelas (file.cls) dan modul standar (file.bas). Versi saat ini masing-masing memanggil kelas dan modul ini.

  • Anggota Bersama. Anda dapat mengontrol apakah anggota kelas adalah anggota bersama atau instans.

  • Orientasi objek. Kelas berorientasi objek, tetapi modul tidak. Jadi hanya kelas yang bisa dijadikan objek. Untuk informasi selengkapnya, lihat Objek dan Kelas.

Aturan

  • Pengubah. Semua anggota modul dibagikan secara implisit. Anda tidak dapat menggunakan Shared kata kunci saat mendeklarasikan anggota, dan Anda tidak dapat mengubah status bersama anggota mana pun.

  • Turunan. Modul tidak dapat mewarisi dari jenis apa pun selain Object, dari mana semua modul mewarisi. Secara khusus, satu modul tidak dapat mewarisi dari yang lain.

    Anda tidak dapat menggunakan Pernyataan Warisan dalam definisi modul, bahkan untuk menentukan Object.

  • Properti Default. Anda tidak dapat menentukan properti default apa pun dalam modul. Untuk informasi selengkapnya, lihat Default.

Perilaku

  • Tingkat Akses. Dalam modul, Anda dapat mendeklarasikan setiap anggota dengan tingkat aksesnya sendiri. Anggota modul default ke Akses publik, kecuali variabel dan konstanta, yang default ke Akses privat. Ketika modul memiliki akses yang lebih terbatas daripada salah satu anggotanya, tingkat akses modul yang ditentukan diutamakan.

  • Cakupan. Modul berada dalam lingkup di seluruh kumpulan namanya.

    Ruang lingkup setiap anggota modul adalah seluruh modul. Perhatikan bahwa semua anggota menjalani promosi jenis, yang menyebabkan cakupan mereka dipromosikan ke namespace yang berisi modul. Untuk informasi selengkapnya, lihat Penentu Jenis.

  • Kualifikasi. Anda dapat memiliki beberapa modul dalam proyek, dan Anda dapat mendeklarasikan anggota dengan nama yang sama dalam dua modul atau lebih. Namun, Anda harus memenuhi syarat referensi apa pun kepada anggota tersebut dengan nama modul yang sesuai jika referensi berasal dari luar modul itu. Untuk informasi selengkapnya, lihat Referensi ke Elemen yang Dideklarasikan.

Contoh

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

Lihat juga