Module Deyimi
Bir modülün adını tanımlar ve modülün içinde yer alan değişkenlerin, özelliklerin, olayların ve yordamların tanımını sağlar.
Syntax
[ <attributelist> ] [ accessmodifier ] Module name
[ statements ]
End Module
Bölümler
attributelist
İsteğe bağlı. Bkz. Öznitelik Listesi.
accessmodifier
İsteğe bağlı. Aşağıdakilerden biri olabilir:
Bkz. Visual Basic..
name
Gereklidir. Bu modülün adı. Bkz. Bildirilen Öğe Adları.
statements
İsteğe bağlı. Bu modülün değişkenlerini, özelliklerini, olaylarını, yordamlarını ve iç içe türlerini tanımlayan deyimler.
End Module
Tanımı Module sonlandırılır.
Açıklamalar
Deyimi, Module ad alanı genelinde kullanılabilen bir başvuru türünü tanımlar. Bir modül (bazen standart modül olarak da adlandırılan) bir sınıfa benzer ancak bazı önemli ayrımlar vardır. Her modülde tam olarak bir örnek bulunur ve bir değişken oluşturularak atanma ihtiyacı olmaz. Modüller devralmayı desteklemez veya arabirimleri uygulamaz. Bir modülün sınıf veya yapıya göre bir tür olmadığını fark edersiniz; bir programlama öğesini modülün veri türüne sahip olacak şekilde bildiresiniz.
Yalnızca ad Module alanı düzeyinde kullanabilirsiniz. Bu, bir modülün bildirim bağlamının bir kaynak dosya veya ad alanı olması gerektiğini ve bir sınıf, yapı, modül, arabirim, yordam ya da blok olamaz olduğu anlamına gelir. Bir modülü başka bir modül içinde veya herhangi bir tür içinde iç içe yerleştirmezsiniz. Daha fazla bilgi için bkz. Bildirim Bağlamları ve Varsayılan Erişim Düzeyleri.
Bir modül, programınız ile aynı yaşam süresine sahip olur. Üyelerinin hepsi Shared olduğundan, programın üyelerine eşit yaşam sürelerine de sahip olur.
Modüller varsayılan olarak Arkadaş erişimi'ne sahip olur. Erişim değiştiricileriyle erişim düzeylerini ayarlayabilirsiniz. Daha fazla bilgi için bkz. Visual Basic.
Bir modülün tüm üyeleri Shared örtülüdir.
Sınıflar ve Modüller
Bu öğelerin birçok benzerlikleri vardır, ancak bazı önemli farklılıklar da vardır.
Terimler. Önceki sürümler Visual Basic modül türlerini tanır: sınıf modülleri (.cls dosyaları) ve standart modüller (.bas dosyaları). Geçerli sürüm sırasıyla bu sınıfları ve modülleri çağırıyor.
Paylaşılan Üyeler. Bir sınıfın üyesinin paylaşılan üye mi yoksa örnek üyesi mi olduğunu kontrol etmek için.
Nesne Yönü. Sınıflar nesne odaklıdır, ancak modüller değildir. Bu nedenle yalnızca sınıfların örneği nesne olarak kullanılabilir. Daha fazla bilgi için bkz. Nesneler ve Sınıflar.
Kurallar
Değiştirici. Tüm modül üyeleri örtülü olarak Paylaşıldı. Bir üyeyi
Sharedbildirerek anahtar sözcüğünü kullanılamaz ve herhangi bir üyenin paylaşılan durumunu değiştirilemez.Devralma. Bir modül, tüm modüllerin devralması için Object dışında herhangi bir türden devralamaz. Özellikle, bir modül başka bir modülden devralamaz.
Belirtmek için bile modül tanımında Inherits Deyimini Object kullanılamaz.
Varsayılan Özellik. Bir modülde herhangi bir varsayılan özellik tanımamaz. Daha fazla bilgi için bkz. Varsayılan.
Davranış
Erişim Düzeyi. Bir modülde her üyeyi kendi erişim düzeyine sahip olarak bildirabilirsiniz. Modül üyeleri, varsayılan olarak Özel erişim olan değişkenler ve sabitler dışında Genel erişim'i kullanır. Bir modülün üyelerinden daha fazla kısıtlı erişimi olduğunda, belirtilen modül erişim düzeyi önceliklidir.
Kapsam. Bir modül, ad alanı genelinde kapsam içindedir.
Her modül üyesinin kapsamı modülün tamamıdır. Tüm üyelerin tür yükseltmesine sahip olduğunu ve bu nedenle kapsamlarının modülü içeren ad alanına yükseltildiklerine dikkat edersiniz. Daha fazla bilgi için bkz. Tür Yükseltme.
Nitelik. Bir projede birden çok modüle sahip olabilir ve aynı adla üyeleri iki veya daha fazla modülde bildirabilirsiniz. Ancak, başvuru bu modülün dışından geliyorsa, bu tür bir üyeye uygun modül adıyla başvuru uygun uygun olması gerekir. Daha fazla bilgi için bkz. Bildirilen Öğelere Başvurular.
Örnek
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